Galerie der in MQL geschriebenen UIs - Seite 43

 
hini #:
Wenn sich die Symbolleiste verengt, reagiert die Taskleiste am unteren Rand nicht sofort, man muss zu einem anderen Diagramm wechseln und zurückklicken, bevor sich die Taskleiste nach unten bewegt. Ich bin nicht sicher, ob dies verbessert werden kann.
Es ist merkwürdig. Ich werde versuchen, den Fehler bei mir zu reproduzieren und zu posten.
 
hini #:
Dynamische Fenster scheinen noch nicht ausgereift zu sein. Der Mauszeiger bleibt erhalten, nachdem die Maus die Position verlassen hat.
Ja, aber es geht um die Dynamik, das Scrollen und Zoomen. Das ist der schwierigste Teil. Der Rest ist nicht schwer zu beheben.

Haben Sie wirklich eine neue Version des Designers erstellt?
 
hini #:
Ich erwarte, dass ich weitere (7) LEKTIONEN hinzufügen werde, damit die Benutzer wissen, wie sie die Bibliothek nutzen können.
Ich werde mir ernsthaft Gedanken über die Lektionen machen.
 


ACHTUNG, WICHTIG!
BEVOR SIE EINE NEUE VERSION DES KONSTRUKTORS INSTALLIEREN, LÖSCHEN SIE DIE VERZEICHNISSE DER ALTEN VERSION VOLLSTÄNDIG AUS DEN META-EDITOR-VERZEICHNISSEN!

NICHT ÄNDERN, SONDERN KOMPLETT LÖSCHEN UND NEU INSTALLIEREN.

//--------------------------------------------------------------------------------------------------------------

Jetzt habe ich es überprüft und es stellt sich heraus, dass man keine neuen Builder-Ordner über die alten schreiben kann. Natürlich bleiben einige alte Dateien erhalten, was zu Fehlern führt, von denen einige nicht offensichtlich sind. Ich habe extra neue Ordner über die alten geschrieben und der Konstruktor hat nicht richtig funktioniert.

Erst als ich die alten Ordner und Dateien komplett löschte und die neuen an einen sauberen Platz legte, erzielte ich das gewünschte Ergebnis.

Deshalb:

1 . Löschen Sie alle Ordner und Dateien des alten Builds.

2 . Entfernen Sie den KIB Expert Advisor und den KIB-Quellindikator aus den Charts und löschen Sie sie aus dem MT5-Navigator.

3 . Installieren Sie die neue Version des Builds von Grund auf wie folgt:


a ) Öffnen Sie die Datei ( 1 ) KIB v1.mq5. Kompilieren Sie. Führen Sie sie auf dem Chart aus.

b ) Öffnen Sie die Datei ( 1 ) KIB-source v1.mq5. Kompilieren. Führen Sie sie auf demselben Diagramm aus.

c) Öffnen Sie die Datei ( 1 ) EA Shell v1.mq5. Kompilieren. Legen Sie sie auf den benachbarten Chart.


Dann können Sie es testen. Ansonsten sind die Fehler unvorhersehbar.

Der Bug mit der springenden Taskleiste tritt bei mir zum Beispiel nicht auf.

Hier ist ein Videobeweis:

(Klick auf das Bild)









 

Interessante Beobachtung.

Ich entwickle normalerweise auf dem alten Build von MT5 (2470), weil ich daran gewöhnt bin. Dann übertrage ich die Änderungen auf den neuen Build (4424). So ist die Grafik auf dem neuen Build merklich schneller. Aber die Kompilierung ist auf dem alten Build schneller, also bin ich noch dabei. Ich spare bei jeder Kompilierung (ungefähr) 10 Sekunden. Das ist beachtlich, wenn man bedenkt, wie viele Kompilierungen ich pro Tag durchführen muss. Deshalb arbeite ich auf zwei Plattformen gleichzeitig. :)

 
hini #:
Wenn sich die Symbolleiste verengt, reagiert die Taskleiste am unteren Rand nicht sofort, man muss zu einem anderen Diagramm wechseln und zurückklicken, bevor sich die Taskleiste nach unten bewegt. Ich bin nicht sicher, ob dies verbessert werden kann.

Versuchen Sie, den Builder von Grund auf neu zu installieren, indem Sie zuerst alle alten Dateien und Ordner löschen. Der Fehler mit der springenden Taskleiste sollte dann verschwinden.

 
hini #:
Ich erwarte, dass ich weitere (7) LESSONS hinzufügen werde, damit die Benutzer wissen, wie sie die Bibliothek nutzen können.

Es besteht kein Zweifel, dass Sie Recht haben. Es werden mehr Lektionen benötigt. Ich bin sehr mit der Entwicklung beschäftigt und habe im Moment kaum Zeit, Lektionen zusammenzustellen. Sobald ich jedoch die drei grundlegenden Aufgaben erledigt habe: Programmelementverwaltung, dynamische Tabellen und skalierbare Fenster, werde ich anfangen, Artikel über die Auszeichnungssprache zu schreiben.

 

In der Tat sind die dynamischen Fenster noch nicht fertig. Deshalb wollte ich sie auch nicht in die Veröffentlichung aufnehmen. Aber gestern haben wir über skalierbare Fenster gesprochen, und ich habe beschlossen, zu zeigen, in welchem Stadium der Entwicklung sie sich befinden.

Nach meinen Schätzungen sind die Fenster zu 80 % fertig.

Es ist wichtig zu erkennen, dass die komplexesten Algorithmen in diesem Element die sind, die für die Dynamik verantwortlich sind: Größenänderung, Skalierung und Scrollen.

Stellen Sie sich vor, der Benutzer scrollt das Bild erst vertikal, dann horizontal. Aber nicht bis zum Ende, sondern lässt es irgendwo in der Mitte stehen. Dann skaliert er das Fenster. Oder, ähm. ändert die Größe des Fensters. Z.B. zieht man am oberen linken oder unteren rechten Rand. Dann sollte das Fenster sowohl niedriger und höher, als auch breiter und schmaler werden. Das heißt, die Bildlaufleisten, das Fenster selbst sowie das verschobene Bild müssen bei diesem Vorgang kohärent und korrekt ihre Position und Größe verändern. Diese Mechanismen funktionieren also bereits sehr gut. Mit anderen Worten, der schwierigste Teil liegt hinter uns. Und 20 % sind Kleinigkeiten, wie die Farbe, die an den oberen Schaltflächen klebt, oder manchmal nicht verschwindende Pfeile. Ich bin also optimistisch. Dies ist eines der komplexesten Elemente der Benutzeroberfläche, und es ist fast fertig.

Es gibt nichts Komplizierteres als ein dynamisches Fenster. Selbst die Baumliste war einfacher.

 

Jetzt ist mir aufgefallen, dass der Fehler mit der klemmenden Taskleiste immer noch auftritt, aber nur, wenn ich das Terminalfenster auf einen anderen Monitor verschiebe. Wenn man die Größe des Diagramms normal ändert, verhält sich die Taskleiste korrekt.

Ich werde darüber nachdenken, wie ich dieses Problem lösen kann.

 

Nur zur Erinnerung: Wenn Sie irgendwelche Fehler finden - egal welche - melden Sie sie bitte. Dies ist notwendig, um den Designer und die Engine zu verbessern.

Ich möchte darauf hinweisen, dass Probleme, die von Benutzern/Testern gefunden werden, mehrere Gründe haben können:

  • (1) Code-Fehler/-Fehlfunktion.

//-----------------------------------------------------
  • (2 ) Falsche Installation der Release-Version des Builders und der Engine in ME oder auf MT5.
  • (3 ) Fehlerhafter Markup-Code, der vom Benutzer geschrieben wurde.
  • (4 ) Unvollständiges Verständnis der Regeln für die Arbeit mit der grafischen Schnittstelle.
  • (5 ) Fehlinterpretation des Verhaltens von Schnittstellenelementen.
  • (6 ) Falsch eingestellte Parameter oder Eigenschaften.
//-----------------------------------------------------


Ich stimme zu, dass nur der erste Punkt zu 100 % meine Schuld ist. Die anderen sind auch meine Schuld, aber nur zur Hälfte. Denn ich habe es entweder schlecht erklärt oder vergessen, es zu erklären. Da ich das weiß, bin ich bei der Bewertung von Testergebnissen recht selbstkritisch. Aber der Benutzer sollte auch bedenken, dass nicht alles, was nicht funktioniert, wirklich an meinem Fehler liegt. Ich glaube aber, dass die Leute, die den Konstruktor und die Engine ausprobieren oder testen, das richtige Maß an Kompetenz haben. Dieser Beitrag ist also nur eine Feststellung des Offensichtlichen.