Diskussion zum Artikel "Grafische Interfaces X: Algorithmus für den Zeilenumbruch im mehrzeiligen Textfeld (build 12)"

 

Neuer Artikel Grafische Interfaces X: Algorithmus für den Zeilenumbruch im mehrzeiligen Textfeld (build 12) :

Wir fahren fort mit der Entwicklung eines mehrzeiligen Textfeldes. Diesmal ist es unsere Aufgabe einen Algorithmus für den Fall, dass der Text die Breite des Textfeldes überschreitet, zu entwickeln oder, umgekehrt, einen Zeilenumbruch zu entfernen, wenn die möglich ist.

Alle diese Schritte der Zeilenneuordnung, Zeilenumbruchs und des 'umgekehrten' Zeilenumbruchs werden innerhalb der Schleife nicht angezeigt: Das Bild unten zeigt, was der Nutzer sieht, wenn er so mit dem grafischen Interface arbeitet:

 Fig. 8. Veranschaulichung des Algorithmus für den Zeilenumbruch am Beispiel eines Texteditors.

Fig. 8. Veranschaulichung des Algorithmus für den Zeilenumbruch am Beispiel eines Texteditors.

Autor: Anatoli Kazharski

 
Yuriy Zaytsev:
Ist die Frage verloren gegangen? Ich sehe den Text des Beitrags nicht. Nur ein Zitat aus dem ersten Beitrag des Threads.
 
Anatoli Kazharski:
Ist die Frage verloren gegangen? Ich sehe den Text des Beitrags nicht. Nur ein Zitat aus dem ersten Beitrag des Threads.
Es war stumme Bewunderung ;)
 
Andrey Khatimlianskii:
Es war eine stumme Bewunderung ;)
Es bleibt noch die Textauswahl zu implementieren und schon ist ein fast vollwertiges Eingabefeld fertig. Ich werde dann die Eingabefelder in verschiedenen Bibliothekselementen durch diese Variante ersetzen.
 
Ich kann nicht verstehen, warum, wenn ich versuche, ein Panel mit meinem eigenen Namen, aber mit Code aus einem der Beispiele in diesen Artikeln zu erstellen, mein Panel nicht auf dem Chart bleibt und sich selbst löscht und im Log steht "2017.04.14 19:37:16.838 MPanele (RUALR,D1) CWndEvents::CheckExpertSubwindowNumber > Das Löschen des EA-Subwindow bewirkt, dass der EA gelöscht wird!". ?
 
Alexander:
Ich kann nicht verstehen, warum, wenn ich versuche, ein Panel mit meinem eigenen Namen, aber mit Code aus einem der Beispiele in diesen Artikeln zu erstellen, mein Panel nicht auf dem Chart bleibt und sich selbst löscht und im Log steht "2017.04.14 19:37:16.838 MPanele (RUALR,D1) CWndEvents::CheckExpertSubwindowNumber > Das Löschen des EA-Subwindow bewirkt, dass der EA gelöscht wird!". ?
Versuchen Sie, alle Bibliotheksdateien zu löschen und laden Sie die neueste Version aus diesem Artikel herunter.
 
Ich habe die Antwort selbst gefunden. Es stellte sich heraus, dass, wenn Sie Ihren eigenen Expert Advisor nicht direkt im Ordner "Experts", sondern in einem Unterordner, z. B. "Experts\MyExperts", ablegen, eine solche Selbstlöschung aus dem Chart erfolgt.
 
Ja, und mit der neuen Bibliothek aus diesem Artikel funktioniert alles auch in Unterordnern.
 
Alexander:
Ich habe die Antwort selbst gefunden. Es hat sich herausgestellt, dass, wenn Sie Ihren eigenen Expert Advisor nicht direkt im Ordner "Experts" ablegen, sondern in einem Unterordner, z. B. "Experts\MyExperts", eine solche Selbstlöschung aus dem Diagramm erfolgt.
Ich habe versucht, den Expert Advisor auf verschiedenen Verschachtelungsebenen zu testen und konnte dieses Verhalten nicht reproduzieren. Vielleicht gibt es einen anderen Grund. Wenn ich ihn finde, werde ich ihn natürlich beheben.
 
Als ich die neueste Version der Bibliothek aus diesem Artikel installiert habe, wurden alle vorherigen Beispiele von Artikel 01 bis Artikel 10 (von 1 bis 5 TestLibrary) nicht mehr kompiliert. Ausgehend von TestLibrary06 im Ordner Artikel 10 kompilieren alle normal ohne Fehler. Ich gehe davon aus, dass dies auf die Neugestaltung der Bibliothek zurückzuführen ist. Können Sie mir in diesem Zusammenhang sagen, welche Änderungen ich an den vorherigen Beispielen vornehmen muss, damit sie funktionieren, oder wurde dies vielleicht bereits in einem Artikel beschrieben? Konkret möchte ich ein Panel auf der Grundlage des Beispiels aus dem Ordner Artikel 7 TestLibrary05 erstellen. Vielen Dank!