Metatrader Forum | Forex Expert-Advisor | Broker & Forex Tools
Zurück   Metatrader Forum | Forex Expert-Advisor | Broker & Forex Tools > Metatrader 5 > Programmierung MQL5 > Codeschnipsel

Codeschnipsel Codeschnipsel für MQL5.

Login
Benutzername:
Kennwort:


Statistik
Themen: 4973
Beiträge: 43265
Benutzer: 7.221
Aktive Benutzer: 81
Links: 84
Wir begrüßen unseren neuesten Benutzer: Thomas75
Mit 2.475 Benutzern waren die meisten Benutzer gleichzeitig online (16.01.20 um 22:38).
Neue Benutzer:
vor 13 Stunden
- JosephTK
vor 2 Tagen
- Hopfen&Mal...
vor 3 Tagen
- frankmicha...
vor einer Woche
- DFeck
vor einer Woche
- bb1107

Onlineuser
'Wer ist online' anzeigen Benutzer: 1
Gäste: 450
Gesamt: 451
Team: 0
Team:  
Benutzer:  Thomas75
Freunde anzeigen

Empfehlungen

Like Tree2Likes
  • 1 Post By Kronenchakra
  • 1 Post By Kronenchakra
Thema geschlossen
 
Themen-Optionen Thema durchsuchen Ansicht
  #1 (permalink)  
Alt 02.11.16
Gesperrter Benutzer
 
Registriert seit: Feb 2016
Ort: 2100 Österreich
Beiträge: 313
Kronenchakra befindet sich auf einem aufstrebenden Ast
Standard Code Snippets - Ein Eventhandler für alle Fälle (=Events)

Ereignisse (Events) sind in MQL5 ein wichtiges Thema.
Um es Einsteigern zu erleichtern diese Ereignisse zu behandeln, hier ein Beispiel.

Zuerst eine allgemeine Testfunktion:
Code:
void OnChartEvent(const int id, const long &lparam, const double &dparam, const string &sparam)
{
   switch((int)id)
     {
      case  CHARTEVENT_KEYDOWN       : {Print("CHARTEVENT_KEYDOWN"          ,"  id:",id,"  lparam:",lparam,"  dparam:",dparam,"  sparam:",sparam);} break;
      case  CHARTEVENT_MOUSE_MOVE    : {Print("CHARTEVENT_MOUSE_MOVE"       ,"  id:",id,"  lparam:",lparam,"  dparam:",dparam,"  sparam:",sparam);} break;
      case  CHARTEVENT_OBJECT_CREATE : {Print("CHARTEVENT_OBJECT_CREATE"    ,"  id:",id,"  lparam:",lparam,"  dparam:",dparam,"  sparam:",sparam);} break;
      case  CHARTEVENT_OBJECT_CHANGE : {Print("CHARTEVENT_OBJECT_CHANGE"    ,"  id:",id,"  lparam:",lparam,"  dparam:",dparam,"  sparam:",sparam);} break;
      case  CHARTEVENT_OBJECT_DELETE : {Print("CHARTEVENT_OBJECT_DELETE"    ,"  id:",id,"  lparam:",lparam,"  dparam:",dparam,"  sparam:",sparam);} break;
      case  CHARTEVENT_CLICK         : {Print("CHARTEVENT_CLICK"            ,"  id:",id,"  lparam:",lparam,"  dparam:",dparam,"  sparam:",sparam);} break;
      case  CHARTEVENT_OBJECT_CLICK  : {Print("CHARTEVENT_OBJECT_CLICK"     ,"  id:",id,"  lparam:",lparam,"  dparam:",dparam,"  sparam:",sparam);} break;
      case  CHARTEVENT_OBJECT_DRAG   : {Print("CHARTEVENT_OBJECT_DRAG"      ,"  id:",id,"  lparam:",lparam,"  dparam:",dparam,"  sparam:",sparam);} break;
      case  CHARTEVENT_OBJECT_ENDEDIT: {Print("CHARTEVENT_OBJECT_ENDEDIT"   ,"  id:",id,"  lparam:",lparam,"  dparam:",dparam,"  sparam:",sparam);} break;
      case  CHARTEVENT_CHART_CHANGE  : {Print("CHARTEVENT_CHART_CHANGE"     ,"  id:",id,"  lparam:",lparam,"  dparam:",dparam,"  sparam:",sparam);} break;
      default                        : {Print("CHARTEVENT_CUSTOM"           ,"  id:",id,"  lparam:",lparam,"  dparam:",dparam,"  sparam:",sparam);} break;
     }     
}
Zur Erinnerung: die Print()-Funktion gibt am Panel Werkzeuge->Experten aus
Muss man auch erst draufkommen

Jetzt der Code zum Verwenden:
Code:
void OnChartEvent(const int id, const long &lparam, const double &dparam, const string &sparam)
{
   switch((int)id)
     {
      case  CHARTEVENT_KEYDOWN :
            {
               // put your code here or delet this section
            } break;
      case  CHARTEVENT_MOUSE_MOVE :
            {
               // put your code here or delet this section
            } break;
      case  CHARTEVENT_OBJECT_CREATE :
            {
               // put your code here or delet this section
            } break;
      case  CHARTEVENT_OBJECT_CHANGE :
            {
               // put your code here or delet this section
            } break;
      case  CHARTEVENT_OBJECT_DELETE :
            {
               // put your code here or delet this section
            } break;
      case  CHARTEVENT_CLICK :
            {
               // put your code here or delet this section
            } break;
      case  CHARTEVENT_OBJECT_CLICK :
            {
               // put your code here or delet this section
            } break;
      case  CHARTEVENT_OBJECT_DRAG :
            {
               // put your code here or delet this section
            } break;
      case  CHARTEVENT_OBJECT_ENDEDIT :
            {
               // put your code here or delet this section
            } break;
      case  CHARTEVENT_CHART_CHANGE :
      default :
            {
               // put your code here or delet this section
            } break;
     }
}
Viel Erfolg damit
Trader6666 likes this.
  #2 (permalink)  
Alt 04.11.16
Gesperrter Benutzer
 
Registriert seit: Feb 2016
Ort: 2100 Österreich
Beiträge: 313
Kronenchakra befindet sich auf einem aufstrebenden Ast
Standard Da hat leider der Fehlerteufel zugeschlagen

Hier die korrigierte Version, ohne Kommentare.
Code:
void OnChartEvent(const int id, const long &lparam, const double &dparam, const string &sparam)
{
   switch((int)id)
     {
      case  CHARTEVENT_KEYDOWN :
            {
            } break;
      case  CHARTEVENT_MOUSE_MOVE :
            {
            } break;
      case  CHARTEVENT_OBJECT_CREATE :
            {
            } break;
      case  CHARTEVENT_OBJECT_CHANGE :
            {
            } break;
      case  CHARTEVENT_OBJECT_DELETE :
            {
            } break;
      case  CHARTEVENT_CLICK :
            {
            } break;
      case  CHARTEVENT_OBJECT_CLICK :
            {
            } break;
      case  CHARTEVENT_OBJECT_DRAG :
            {
            } break;
      case  CHARTEVENT_OBJECT_ENDEDIT :
            {
            } break;
      case  CHARTEVENT_CHART_CHANGE :
            {
            } break;
      default :
            {
            } break;
     }
}
Hat wohl noch niemand brauchen können
Trader6666 likes this.
Thema geschlossen

Lesezeichen

Stichworte
codeschnipsel, codeschnipsel mql5, eventhandler, programmierung, programmierung metatrader

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are aus
Pingbacks are aus
Refbacks are aus




Alle Zeitangaben in WEZ +1. Es ist jetzt 11:37 Uhr.





Suchmaschine - Reisen - Wavesnode - Facebook Forum - Spam Firewall
-----------------------------------------------------------------------------------------------------------------------------
Powered by vBulletin® Version 3.8.5 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Powered by vBCMS® 2.7.0 ©2002 - 2024 vbdesigns.de
SEO by vBSEO 3.6.1
Copyright ©2009 - 2023 by Expert-Advisor.com - Das Metatrader Forum
MetaTrader bzw. MetaTrader 4 und MetaTrader 5 sind eingetragene Marken der MetaQuotes Software Corp.
-----------------------------------------------------------------------------------------------------------------------------