|
Programmierung MQL4 Hier gehts rund ums Programmieren in MQL4. |
|
Themen-Optionen | Thema durchsuchen | Ansicht |
|
|||
Buttons / Schaltfläche im Chart
Hallo zusammen,
ich suche Codebeispiele, um 2 oder 3 Schaltflächen im Chart zu plazieren. Diese Schaltflächen sollen z.B. alle Orders schließen oder SL löschen. Diese Funktionen funktionieren gut als Skript, ich würde aber gern diese im direkten Zugriff im Chart haben. So wie ich das bisher gelesen habe, ist das via EA möglich oder auch per Indi, aber konkrete Beispiele habe ich im Netz oder hier nicht gefunden. außer evtl. hier http://www.expert-advisor.com/forum/...sschalten.html wobei ich hier das Problem habe zwei Buttons mit versch. Funktion anzulegen, naja bin eben kein Profiproggi, sondern eher ein Codeschnipselsammler mit Try und Error, komme aber leider so nicht weiter. Kann jemand helfen oder hat Hinweise , wo ich dazu Infos finde? Vielen Dank und LG Micha |
|
|||
hat denn keiner eine Idee?
Hallo zusammen,
hat den keiner eine Idee, wie das gehen kann? Viele Grüße |
|
|||
Hallo masta73,
hier ein Beispiel für drei Buttons: Code:
int OnInit() { //--- vCreateButton("Button1","Button1",100,100,100,30,clrGreenYellow,clrBlack); vCreateButton("Button2","Button2",100,200,100,30,clrGreenYellow,clrBlack); vCreateButton("Button3","Button3",100,300,100,30,clrGreenYellow,clrBlack); //--- return(INIT_SUCCEEDED); } void vCreateButton(string name,string label,int xdist,int ydist,int xsize,int ysize,int bcolor,int fcolor) { int chartId; chartId = 0; if(ObjectFind(chartId,name) < 0) { ObjectCreate(chartId,name,OBJ_BUTTON,0,0,0); } if(ObjectFind(chartId,name) >= 0) { ObjectSetString(chartId,name,OBJPROP_TEXT,label); ObjectSetInteger(chartId,name,OBJPROP_XSIZE,xsize); ObjectSetInteger(chartId,name,OBJPROP_YSIZE,ysize); ObjectSetInteger(chartId,name,OBJPROP_CORNER,CORNER_LEFT_UPPER); ObjectSetInteger(chartId,name,OBJPROP_XDISTANCE,xdist); ObjectSetInteger(chartId,name,OBJPROP_YDISTANCE,ydist); ObjectSetInteger(chartId,name,OBJPROP_BGCOLOR,bcolor); ObjectSetInteger(chartId,name,OBJPROP_COLOR,fcolor); ObjectSetInteger(chartId,name,OBJPROP_FONTSIZE,9); ObjectSetInteger(chartId,name,OBJPROP_HIDDEN,true); ObjectSetInteger(chartId,name,OBJPROP_SELECTABLE,1); ObjectSetInteger(chartId,name,OBJPROP_SELECTED,0); //ObjectSetInteger(0,name,OBJPROP_BORDER_COLOR,ChartGetInteger(0,CHART_COLOR_FOREGROUND)); ObjectSetInteger(chartId,name,OBJPROP_BORDER_TYPE,BORDER_RAISED); } } void OnChartEvent(const int id, // Event identifier const long& lparam, // Event parameter of long type const double& dparam, // Event parameter of double type const string& sparam // Event parameter of string type ) { if(id==CHARTEVENT_OBJECT_CLICK) { if(sparam == "Button1") { Print("Button1 clicked"); } if(sparam == "Button2") { Print("Button2 clicked"); } if(sparam == "Button3") { Print("Button3 clicked"); } } } yytrader |
Lesezeichen |
Stichworte |
button, buttons, buttons chart, chart, schaltflächen, schaltflächen chart |
|
|