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.


Portalsuche


Werbung

Login
Benutzername:
Kennwort:


Statistik
Themen: 3946
Beiträge: 37722
Benutzer: 6.245
Aktive Benutzer: 418
Links: 80
Wir begrüßen unseren neuesten Benutzer: joerg
Mit 483 Benutzern waren die meisten Benutzer gleichzeitig online (21.04.16 um 17:12).
Neue Benutzer:
vor einer Stunde
- joerg
vor 20 Stunden
- Mojo
vor einem Tag
- daybyter
vor 4 Tagen
- Marcel83
vor einer Woche
- Megaule

Onlineuser
'Wer ist online' anzeigen Benutzer: 0
Gäste: 40
Gesamt: 40
Team: 0
Team:  
Benutzer:  
Freunde anzeigen

Empfehlungen

Werbung

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 +2. Es ist jetzt 20:19 Uhr.



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