Diskussion zum Artikel "MQL als Darstellungsmittel für graphische Schnittstellen von MQL-Programmen. Teil 1" - Seite 5

 
Aliaksandr Hryshyn:
Ist es möglich, einen Artikel über eine grafische Benutzeroberfläche zu schreiben und keinen einzigen Screenshot zu machen?

Wenn ein Artikel sehr umfangreich ist, ist man gezwungen, ihn in mehrere Teile aufzuteilen und das Material umzuschichten, und die Screenshots wurden in den Fortsetzungen belassen. Der Screenshot von "Spotlight" deckt sich komplett mit dem vorherigen Artikel über die GUI, also habe ich mich auf den Satz beschränkt, dass sich das Aussehen nicht verändert hat.

 
Stanislav Korotky:

Wenn ein Artikel sehr umfangreich ist, ist er gezwungen, in mehrere Teile aufgeteilt zu werden, und die Screenshots wurden in den Fortsetzungen belassen. Der Screenshot von "Spots" deckt sich vollständig mit dem vorangegangenen Artikel über die Benutzeroberfläche, daher habe ich mich auf den Satz beschränkt, dass sich das Aussehen nicht geändert hat.

Wenn ich die linke Maustaste drücke, der Cursor über die Schaltfläche hinausgeht und die Maus losgelassen wird, erhalte ich dieses Bild. Außerdem kann man, nachdem man die Punkte gezogen hat, das Kursdiagramm durch sie hindurchziehen. Kann dies korrigiert werden?

 
Aliaksandr Hryshyn:

Wenn ich die linke Maustaste drücke, der Cursor außerhalb der Taste geht und die Maus losgelassen wird, erhalte ich dieses Bild. Außerdem kann man nach dem Ziehen der Punkte das Preisdiagramm durch sie hindurchziehen. Kann dies korrigiert werden?

"Ein solches Bild" - meinen Sie eine andere Farbe der Felder? Ich habe ein solches Bild nicht beobachtet. PS. Ich habe es geschafft, es zu reproduzieren. Ich werde sehen, was los ist, aber es ist kein Auszeichnungsproblem, sondern es liegt an der Funktionsweise der Standardschaltflächen.

Was das Ziehen des Diagramms angeht, wenn ich richtig verstehe, was Sie meinen, versuchen Sie, diese Datei zu ersetzen (sie stammt aus dem nächsten Beitrag).

Dateien:
 
Eugeniy Lugovoy:
Ok, endlich habe ich Sie erwischt. Sie konzentrieren sich hauptsächlich auf die Technik und nicht auf die Nutzung. Gut gemacht.
Ich wünsche dir viel Glück bei deiner Forschung.

Die Technologie wurde getestet und ist einsatzbereit. Und Ihr Vorschlag?

 
Eugeniy Lugovoy:

Es tut mir leid für meine dumme Frage, aber welche Art von GUI Sie versuchen zu bauen, die nicht getan werden kann (oder ziemlich schwer zu tun) innerhalb der Standard-MQL-Bibliotheken?

Außerdem sehe ich, dass die Umsetzung von Anfang an ziemlich kompliziert ist. Vielleicht könnte es besser sein, in jQuery Stil der UI-Implementierung zu suchen?

Zum Beispiel könnte eine einfache Button-Erstellung so aussehen:

Natürlich braucht es einen eigenen "Objekt-Generator" und so weiter, und es ist auch möglich, es erweiterbar zu machen und "benutzerdefinierte" Objekte zu unterstützen, z.B. mit Schatteneffekten, Farbverläufen, etc.

So könnte es für Entwickler einfacher sein, eine GUI auf diese Weise zu erstellen.

Es ist auch möglich, eine Anwendung wie MT GUI Builder für die visuelle Erstellung von GUI und den Export von JSON-Dateien für die schnelle Implementierung auf der MQL-Seite zu erstellen...

Das sind nur meine Gedanken nach dem Lesen des Artikels und meine Meinung.

Natürlich sind Sie auf Ihren eigenen Weg.

Mit freundlichen Grüßen,

Eugene

Eugene, Sie sind russischer Muttersprachler und sprechen sehr gut Russisch. Warum diese Respektlosigkeit im russischen Teil des Forums?

 
Eugeniy Lugovoy:

Sie sprechen Russisch. Schreiben Sie auf Russisch. Oder benutzen Sie zumindest den eingebauten Übersetzer im Nachrichteneditor.

 
Stanislav Korotky:

"Dieses Muster" - meinen Sie die unterschiedliche Farbe der Felder? Ich habe ein solches Muster nicht beobachtet. PS. Es ist mir gelungen, es zu reproduzieren. Ich werde sehen, was los ist, aber es ist kein Markup-Problem, sondern es liegt an der Funktionsweise der Standardschaltflächen.

Was das Ziehen des Diagramms angeht, wenn ich richtig verstehe, was Sie meinen, versuchen Sie, diese Datei zu ersetzen (sie stammt aus dem nächsten Beitrag).

Mit der neuen Datei wird das Ziehen durch das Fenster behoben.

Was bleibt, ist dies :)

Klicken Sie mit der linken Maustaste in ein Quadrat mit einer Zahl, ziehen Sie von diesem Quadrat weg und lassen Sie los. Die Schattierung verschwindet nicht.

 
Aliaksandr Hryshyn:

Mit der neuen Datei wurde das Ziehen durch das Fenster behoben.

Dies bleibt :)

Klicken Sie mit der linken Maustaste in ein Quadrat mit einer Zahl, bewegen Sie sich von diesem Quadrat weg und lassen Sie los. Die Schattierung verschwindet nicht.

Ja, ich habe es verstanden. Aber so funktionieren die Schaltflächen in der Standardbibliothek von Anfang an. Es gab keinen Grund, sie in alle Richtungen zu bearbeiten, zumal das Problem sehr spezifisch ist - ich hatte nie den Wunsch, die Schaltfläche absichtlich zu drücken und zu ziehen, ohne sie zu drücken. Der Anwendungsfall ist ja auch nicht sehr offensichtlich.

 
Stanislav Korotky:

Ja, ich habe es verstanden. Aber so funktionieren die Schaltflächen in der Standardbibliothek von Anfang an. Ich wollte es nicht in alle Richtungen ändern, zumal das Problem sehr spezifisch ist - ich hatte noch nie den Wunsch, eine Schaltfläche absichtlich zu drücken und sie zu ziehen, ohne sie zu drücken. Es ist ja auch kein sehr offensichtlicher Anwendungsfall.

Kommt in einer solchen Situation nicht das Ereignis "Rechte Maustaste drücken" zum Tragen?
 
Aliaksandr Hryshyn:
Wird in dieser Situation nicht das Ereignis des rechten Mausklicks ausgelöst?

Das kommt darauf an. Ereignisse werden dem Objekt auf der Grundlage von Koordinaten zugewiesen. Befindet sich der Mauszeiger außerhalb der Schaltfläche oder des Fensters, werden sie nicht ausgelöst. Auch Drag'n'Drop funktioniert nach diesem Prinzip - es wird ein sich ständig bewegendes Objekt unter dem Cursor erzeugt. Hier ist eine etwas andere Bearbeitung erforderlich.