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: 3428
Beiträge: 34324
Benutzer: 5.471
Aktive Benutzer: 637
Links: 79
Wir begrüßen unseren neuesten Benutzer: achacimed
Mit 483 Benutzern waren die meisten Benutzer gleichzeitig online (21.04.16 um 17:12).
Neue Benutzer:
vor 10 Stunden
- achacimed
vor 22 Stunden
- EANoob
vor einem Tag
- ozmomania
vor einem Tag
- james2018
vor einem Tag
- theface

Onlineuser
'Wer ist online' anzeigen Benutzer: 1
Gäste: 30
Gesamt: 31
Team: 0
Team:  
Benutzer:  Seany
Freunde anzeigen

Empfehlungen

Werbung

Like Tree2Likes
  • 1 Post By Kronenchakra
  • 1 Post By Kronenchakra
Antwort
 
Themen-Optionen Thema durchsuchen Ansicht
  #1 (permalink)  
Alt 02.11.16
Gesperrter Benutzer
 
Registriert seit: Feb 2016
Ort: 2100 Österreich
Beiträge: 176
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.
Mit Zitat antworten
  #2 (permalink)  
Alt 04.11.16
Gesperrter Benutzer
 
Registriert seit: Feb 2016
Ort: 2100 Österreich
Beiträge: 176
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.
Mit Zitat antworten
Antwort

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 00:02 Uhr.



-----------------------------------------------------------------------------------------------------------------------------
Powered by vBulletin® Version 3.8.5 (Deutsch)
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Powered by vBCMS® 2.7.0 ©2002 - 2017 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.
-----------------------------------------------------------------------------------------------------------------------------