Kronenchakra |
02.11.16 20:13 |
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 :D
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
|