Ist es möglich, in einem OBJ_TEXT-Objekt Text auf mehreren Zeilen auszugeben? - Seite 2

 
Farkhat Guzairov:

Das wäre dasselbe wie bei einem normalen Textobjekt. Wie auch immer, ich werde Ihre Lösung für andere Zwecke verwenden, danke!

Das ist überhaupt nicht dasselbe.
 
Puschkin ahnte nicht, dass seine Gedichtabschnitte von einer unbekannten Maschine auf eine seltsame Grafik gedruckt werden würden, auf eine Art iCanvas... Es ist, als ob die Indikatoren von Nicholas in 250 Jahren von Außerirdischen aus dem Proxima-System in das Marsgestein eingeprägt worden wären.
 
Nikolai Semko:
Das ist überhaupt nicht dasselbe.

Tut mir leid, ich habe nicht aufgepasst, ich habe diese Konstruktion gesehen, und dann habe ich sie mir selbst ausgedacht :), ich muss sie ausprobieren. Ist es für MQL5?

    Canvas.Comm("Ты гульлива и вольна;");
    Canvas.TextPosY+=20;                                // увеличиваем Y координату на 20 пикселей
 
Farkhat Guzairov:

Tut mir leid, ich habe nicht aufgepasst, ich habe diese Konstruktion gesehen, und dann habe ich sie mir selbst ausgedacht :), ich muss sie ausprobieren. Ist es für MQL5?

Kanvas (und nicht nur Kanvas) ist auf MQL5 10 Mal schneller. Aber das alles funktioniert auch für MQL4.

iCanvas für MQL4 -https://www.mql5.com/en/code/23840

Für MQL5

- https://www.mql5.com/ru/code/22164

 
Ich entferne die Frage, Sie haben eine Implementierung für beide Plattformen, danke.
 
Nikolai Semko:
Kanvas (und nicht nur Kanvas) ist bei MQL5 10 Mal schneller. Aber das alles funktioniert auch für MQL4.

iCanvas für MQL4 -https://www.mql5.com/en/code/23840

Für MQL5

- https://www.mql5.com/ru/code/22164

Um etwaige Zweifel auszuräumen, gibt es in dem von Ihnen geposteten Beispiel 3 verschiedene Textfragmente. Um ehrlich zu sein, weiß ich nicht, ob es möglich ist, das zweite Textfragment zu bearbeiten (zu löschen), usw.?

 
Farkhat Guzairov:

Um etwaige Zweifel auszuräumen: In dem von Ihnen geposteten Beispiel gibt es 3 Optionen für das Textfragment. Um ehrlich zu sein, verstehe ich nicht, ob es möglich ist, das zweite Textfragment zu bearbeiten (zu löschen), usw.?

Mit Leinwand ist alles möglich. Es gibt keine Einschränkungen. Aber dies ist ein völlig anderer Code.
Lesen Sie die Dokumentation, lernen Sie und versuchen Sie es.
Das Wichtigste ist, dass die Leinwand ein uint-Array mit der Größe Height*Width ist, dass Erase() alles entfernt und den Hintergrund mit einer Farbe füllt, und dass Update() die aktuelle Leinwand auf dem Bildschirm anzeigt. In meinem Beispiel gibt es nur eine Leinwand für den gesamten Bildschirm, aber es können beliebig viele und beliebig große sein.
Und es ist sehr schnell.
Das Löschen dauert weniger als eine Millisekunde, um den gesamten Bildschirm anzuzeigen.
Aktualisierung in etwa einer Millisekunde.
Die Bilderzeugung dauert in der Regel 0-5 Millisekunden, je nach Komplexität.
 
Nikolai Semko:
Lesen Sie die Dokumentation, lernen Sie und versuchen Sie es.

Sehr witzig )), werde den Rat befolgen!!! :)

 
Реter Konow:
Puschkin wusste nicht, dass seine Gedichtabschnitte von einer unbekannten Maschine auf eine seltsame Grafik gedruckt werden würden, durch eine Art iCanvas... Es ist, als ob die Indikatoren von Nicholas in 250 Jahren von Außerirdischen aus dem Proxima-System in das Marsgestein eingeprägt worden wären.

Aha, es hätte die Mai-Dekrete des Beleuchters heißen sollen... )) So dass die Nachkommen 250 Jahre später sagen werden, dass nie etwas von ihnen getan wurde.

 
Nikolai Semko:

es ist einfacher, Kanvas mit meiner iCanvas-Klasse zu verwenden:



Um solche Dinge mit Objekten darzustellen, wäre der Code viel umfangreicher.

Nikolai, gibt es eine Möglichkeit, den Text an der oberen rechten Ecke auszurichten? Ich kämpfe schon seit einem halben Tag... Die rechte Ecke ist ausgerichtet, aber der Text ist nur an der linken Seite ausgerichtet. Können Sie mir einen Tipp geben?