MetaTrader 4 Build 529 beta mit neuem Compiler veröffentlicht - Seite 149

 

Ein frohes neues Jahr für alle!


Können Sie mir bitte sagen, ob es möglich ist, mehr als 8 Puffer für Indikatoren zu verwenden, und ob die Methoden wie DRAW_FILLING korrekt funktionieren?

Kann ich ein praktikables Beispiel haben?

Denn ich habe einige seltsame Dinge, obwohl der Compiler sich nicht beschwert. In Anbetracht der Tatsache, dass ich nichts in MQL5 getan habe, kann ich es falsch verstanden haben :)


Der Compiler hat einen Fehler: TimeTradeServer' - Funktion nicht definiert

Bedeutet dies, dass die Funktion verloren gegangen ist?


 
ALXIMIKS:

3) Speicher kann 4-8 Gigs oder mehr sein....da und i5 und i7 Prozessoren sind nicht ungewöhnlich...

und das 4K-Terminal ist 32bit und kann, wenn ich mich nicht irre, nicht mehr als 2g RAM verwenden, haben Sie jemals daran gedacht?

1) Bei nur 8 Puffern liegt das wahrscheinlich an der Architektur oder am RAM, ich weiß es nicht genau.

3. bei 64-Bit-Betriebssystemen maximal 4 GB.

(1) Dies ist eine künstliche Einschränkung. Sie können mehr haben, aber sie wollen es nicht. Wahrscheinlich zu viel, um es noch einmal zu machen.

 

Von der Referenz:

StringBufferLen

Gibt die Größe des Puffers zurück, der der Zeichenkette zugeordnet ist.

int StringBufferLen(
string string_var // string
)

Die Mindestgröße des Puffers beträgt 16.

aber die Mindestgröße des Puffers für die Zeichenfolge beträgt 123.

Bei der Verwendung von

StringInit

Initialisiert die Zeichenkette mit den angegebenen Zeichen und liefert die angegebene Zeichenkettengröße.

bool StringInit(
string& string_var, // zu initialisierende Zeichenkette
int new_len=0, // erforderliche Länge der Zeichenkette nach der Initialisierung
ushort character=0 // Zeichen zum Füllen der Zeichenkette
)

ist die Puffergröße immer noch gleich 123, und das Beispiel aus der Referenz ist falsch (StringBufferLen(str) = 123):

void OnStart()
  {
   string str;
   StringInit(str,20,'_');
   Print("str = ",str);
   StringFill(str,0);
   Print("str = ",str,": StringBufferLen(str) = ", StringBufferLen(str));
  }
// Результат
//   str = ____________________
//   str =  : StringBufferLen(str) = 20
//

MQL4 Referenz / String-Funktionen / StringFill


 

Frohes neues Jahr, liebe Kollegen!

Was ist der aktuelle Stand der Dinge? Ist eine höhere Version als 568 veröffentlicht worden?

Ich habe nur den Verdacht, dass sich das Terminal nicht mehr selbst aktualisiert.

 
Night63:

Frohes neues Jahr, liebe Kollegen!

Was ist die neueste Version? Ist eine höhere Version als 568 veröffentlicht worden?

Ich habe nur den Verdacht, dass sich das Terminal nicht mehr selbst aktualisiert.

Vor dem fünften Tag wird es keine Aktualisierung geben. Es besteht der Verdacht, dass Sie nicht wissen, wie man im Urlaub liest ;) Renat hat vor kurzem darüber geschrieben.
 
artmedia70:
Es besteht der Verdacht, dass die Leute in den Ferien nicht lesen können ;) Renat hat vor kurzem darüber geschrieben.


"Vor kurzem" - das war letztes Jahr! ;)

Ich danke Ihnen! Ich habe es wirklich vermisst.

 
Y.A.K._:

Ein frohes neues Jahr für alle!


Können Sie mir bitte sagen, ob es möglich ist, mehr als 8 Puffer für Indikatoren zu verwenden, und ob Methoden wie DRAW_FILLING korrekt funktionieren?

Kann ich ein praktikables Beispiel haben?

Denn ich habe einige seltsame Dinge, obwohl der Compiler sich nicht beschwert. In Anbetracht der Tatsache, dass ich nichts in MQL5 getan habe, kann ich es falsch verstanden haben :)


Der Compiler hat einen Fehler: TimeTradeServer' - Funktion nicht definiert

Bedeutet dies, dass die Funktion verschwunden ist?


Die Fragen wurden mit Inhalten überflutet.
 

Frohes neues Jahr!

Ich versuche, ein grafisches Etikett mit Text zu erstellen, aber es funktioniert nicht.

bool Graf(string txt,int x,int y,string text,int widch,int heigt,color colbg,color coltx,int cor)
  {
   if(ObjectFind(txt)==-1)
   ObjectCreate(0,txt,OBJ_RECTANGLE_LABEL,0,0,0);
   ObjectSetInteger(0,txt,OBJPROP_CORNER,cor);
   ObjectSetInteger(0,txt,OBJPROP_ANCHOR,ANCHOR_LEFT);
   ObjectSetInteger(0,txt,OBJPROP_BGCOLOR,colbg);
   ObjectSetInteger(0,txt,OBJPROP_XDISTANCE,x);
   ObjectSetInteger(0,txt,OBJPROP_YDISTANCE,y);
   ObjectSetString (0,txt,OBJPROP_TOOLTIP,name);
   ObjectSetString (0,txt,OBJPROP_TEXT,text);
   ObjectSetInteger(0,txt,OBJPROP_XSIZE,widch);
   ObjectSetInteger(0,txt,OBJPROP_YSIZE,heigt);
   ObjectSetString (0,txt,OBJPROP_FONT,"Arial");
   ObjectSetInteger(0,txt,OBJPROP_COLOR,coltx);
   ObjectSetInteger(0,txt,OBJPROP_BORDER_COLOR,C'80,80,80');
   ObjectSetInteger(0,txt,OBJPROP_SELECTABLE,true);
   ObjectSetInteger(0,txt,OBJPROP_SELECTED,true);   
   ObjectSetInteger(0,txt,OBJPROP_FONTSIZE,10);
   ChartRedraw();
   return true;
  }

Ein grafisches Etikett erscheint

Aber es ist kein Text darauf ...

Was ist, wenn ich einen Text hinzufügen möchte, um ein zusätzliches OBJ_Label zu erstellen?

Ich sehe keinen Sinn darin, Schaltflächen mit Text in der Mitte zu erstellen...

 

Ist der Server nicht verfügbar oder handelt es sich um einen Terminalfehler?

 
vadynik:

Ist der Server nicht verfügbar oder handelt es sich um einen Terminalfehler?


Der Server ist verfügbar. Aber ich würde Ihnen raten, 10 Mal nachzudenken, bevor Sie eine Aktualisierung vornehmen. Die Betaversion wird gerade getestet, wenn Sie keine Probleme haben wollen, sollten Sie es nicht tun.