Bitte geben Sie mehr Freiheit bei der Verwaltung der Diagrammfenster - Seite 6

 
barabashkakvn:
Und wie funktioniert das "Fadenkreuz" in einem Diagrammobjekt - ich meine, wenn Sie mit dem Fadenkreuz über ein Diagrammobjekt fahren, werden die OHLC-Daten in der Statusleiste angezeigt?
Das habe ich noch nicht versucht. Vielleicht ist es mit diesen Funktionen möglich:ChartXYToTimePrice() und ChartTimePriceToXY().
 
tol64:
Ich habe das nicht versucht. Vielleicht ist es mit diesen Funktionen möglich:ChartXYToTimePrice() und ChartTimePriceToXY().
Es scheint möglich zu sein, nur gibt es keinen Zugang zur Statuszeile. Ich möchte eine vollständige "Fadenkreuz"-Imitation auf dem Diagrammobjekt, die wie auf einem normalen Diagramm funktioniert - mit der Anzeige in der Statusleiste.
 
barabashkakvn:
Das ist möglich, denke ich, aber es gibt keinen Zugriff auf die Statusleiste. Ich möchte eine vollständige Imitation des "Fadenkreuzes" auf dem Diagrammobjekt, so dass es wie ein normales Diagramm funktioniert - mit Anzeige in der Statusleiste.

Dann müssen die grafischen Objekte weiter entwickelt werden. Ich bin dafür, so viele Möglichkeiten wie möglich zu haben, sowohl bei grafischen Objekten als auch bei grafischen Fenstern. Ich sehe keinen Grund, dagegen zu sein, nur weil man dagegen ist. ;)

Eine gute Idee wäre es, alle Fälle zu sammeln, in denen die eine oder andere Funktion zu diesem Thema benötigt wird, und sie im ersten Beitrag der Umfrage zu präsentieren. Die Umfrage sollte zeitlich unbegrenzt sein. Sonst gehen sie oft unter, und nur wenige Leute sehen sie, weil sie vielleicht nicht oft ins Forum schauen.

 
Ich schlage vor, dass Sie alle Fälle, in denen Sie eine Art von Fenster oder Diagrammfunktion benötigen, gleich hier einfügen. Lassen Sie uns diskutieren. Ich denke, wir können eine lange Umfrage machen, und dann können wir diesen ganzen Thread in die Umfrage verschieben.
 

Wie auch immer, hier ist ein halber Ersatz für die Steuerelemente des Diagrammfensters:

 

Wenn der Cursor über ein normales Diagramm bewegt wird, zeigt die Statusleiste OHLC-Werte an, aber wenn der Cursor über ein Diagrammobjekt bewegt wird, werden die OHLC-Werte nicht in die Statusleiste übertragen. Da MQL keinen Zugriff auf die Statusleiste ermöglicht, müssen wir uns eine Ersatz-Statusleiste für das Diagrammobjekt einfallen lassen.

Bis jetzt kann ich mir OBJ_LABEL-Textbeschriftungen vorstellen.

 
barabashkakvn:

Wenn der Cursor über ein normales Diagramm bewegt wird, zeigt die Statusleiste OHLC-Werte an, aber wenn der Cursor über ein Diagrammobjekt bewegt wird, werden die OHLC-Werte nicht in die Statusleiste übertragen. Da MQL keinen Zugriff auf die Statusleiste ermöglicht, müssen wir uns eine Ersatz-Statusleiste für das Diagrammobjekt einfallen lassen.

Bisher fallen mir die OBJ_LABEL-Textbeschriftungen ein.

Unser technischer Support hat uns geantwortet, dass es nicht möglich sein wird, OHLC-Werte von OBJ_CHART-Objektleisten an die Statusleiste zu übertragen. Daher müssen wir unsere eigene Statusleiste implementieren:

Eigene Statusleiste

 

Bei der Platzierung der Statusleiste (in Form von OBJ_BITMAP_LABEL) ist ein Fehler aufgetreten: Das Objekt wird gerendert und hinterlässt eine Ein-Pixel-Leiste darunter.

Einstellungen von OBJ_BITMAP_LABEL:

x=0,                      // координата по оси X
y=0,                      // координата по оси Y
CORNER_LEFT_UPPER,        // угол графика для привязки
ANCHOR_LEFT_UPPER,        // способ привязки

D.h. das grafische Beschriftungsobjekt wird am unteren Rand des Diagramms gezeichnet und das Koordinatenzentrum befindet sich in der linken unteren Ecke des Diagramms.

Mit diesen Einstellungen wird das grafische Beschriftungsobjekt nicht mit den Koordinaten (0;0), sondern mit den Koordinaten (0;1) gezeichnet.

Hier ist ein Bild, das einen 1-Pixel-Balken zeigt:

Fehlerhafte Darstellung von OBJ_BITMAP_LABEL

Dateien:
 

Eine Vorlage mit einem zusätzlichen Fenster wird auf das Diagrammobjekt angewendet und das zusätzliche Fenster wird in der Größe verändert. Nach dem Schließen und Öffnen des Terminals setzt das Diagrammobjekt die Höhe des Zusatzfensters auf Null zurück. Ist das normal?


P.S. Ich habe ein Testskript beigefügt.

Dateien:
test_script.mq5  13 kb
 
barabashkakvn:

Eine Vorlage mit einem zusätzlichen Fenster wird auf das Diagrammobjekt angewendet und das zusätzliche Fenster wird in der Größe verändert. Nach dem Schließen und Öffnen des Terminals setzt das Diagrammobjekt die Höhe des Zusatzfensters auf Null zurück. Ist das normal?

Beim Beenden des Terminals wird der Status von Grafiken in chr-Dateien gespeichert. Es werden nicht alle Eigenschaften von grafischen Objekten, die für die Programmsteuerung vorgesehen sind, geschrieben, das ist normal.