Diskussion zum Artikel "Grafische Interfaces X: Erweitertes Management von Listen und Tabellen Code Optimierung (build 7)" - Seite 11
Sie verpassen Handelsmöglichkeiten:
- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Registrierung
Einloggen
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Wenn Sie kein Benutzerkonto haben, registrieren Sie sich
Ich verstehe immer noch nicht, wie ich die Tabelle aktualisieren kann: ....
Es gibt dynamische Daten in der Tabelle, die wir per Timer aktualisieren müssen.
Ich versuche, sie zuerst mit der Clear()-Methode zu löschen, aber es erscheint ein Fehler:
Wie kann ich sie aktualisieren? Ich habe in den Artikeln nirgends ein Beispiel gefunden. In allen Artikeln ist die Tabelle mit statischen Daten gefüllt.
Wie kann ich die Tabelle aktualisieren, die ich nicht verstanden habe....
Es gibt dynamische Daten in der Tabelle, wir müssen sie per Timer aktualisieren.
Ich versuche, sie zuerst mit der Clear()-Methode zu löschen, aber es erscheint ein Fehler:
Wie kann ich sie aktualisieren? Ich habe in den Artikeln nirgends ein Beispiel gefunden. In allen Artikeln ist die Tabelle mit statischen Daten gefüllt.
Forum zum Thema Handel, automatisierte Handelssysteme und Testen von Handelsstrategien.
Diskussion über den Artikel "GUI X: Sortierung, Tabellenumbau und Steuerelemente in Zellen (Build 11)".
Anatoli Kazharski, 2018.05.19 09:03 AM
Sehen Sie hier: Graphical Interfaces X: Updates für die gezeichnete Tabelle und Code-Optimierung (Build 10)
Ich danke Ihnen. Nur wird dabei die Sortierung nicht berücksichtigt.
Beim Sortieren können die Zeilen ihre Position ändern....
Ich danke Ihnen. Nur wird dabei die Sortierung nicht berücksichtigt.
Beim Sortieren können die Zeilen ihre Position ändern...
Sie können die Sortierung selbst steuern. Zu diesem Zweck gibt es eine öffentliche Methode CTable::SortData().
Beispiel und die neueste Version der CTable-Klasse hier: EasyAndFast library updates
Sie können die Sortierung selbst steuern. Zu diesem Zweck gibt es eine öffentliche Methode CTable::SortData().
Beispiel und die neueste Version der CTable-Klasse hier: EasyAndFast library updates
Es ist immer noch unklar. Es gibt keine Methode, um festzustellen, wie viele Zeilen in der Tabelle nicht leer sind. Ich lade Informationen über offene Aufträge in die Tabelle. Aufträge können erscheinen oder geschlossen werden. Ich muss jedes Mal alle Werte in der Tabelle durchgehen und mit ticket.... vergleichen. Das ist lästig, aber möglich.
Könnten Sie mir auch bei der Sortierung helfen? Ich muss eine Zeile in der Tabelle analog zu der auf der Registerkarte Handel erstellen. Eine Zeile, die den Gewinn aus offenen Positionen, Provisionen usw. zusammenfasst. Das heißt, die Spalten dieser Zeile werden dieselben sein wie in der Tabelle, aber mit Gesamtwerten. Wie kann ich also diese Zeile an die erste Stelle der Liste setzen, so dass die Sortierung nicht auf sie angewendet wird?
Das ist immer noch nicht klar. Es gibt keine Methode, um festzustellen, wie viele Zeilen in der Tabelle nicht leer sind. Ich lade Informationen über offene Aufträge in die Tabelle hoch. Aufträge können erscheinen oder geschlossen werden. Ich muss jedes Mal alle Werte in der Tabelle durchgehen und mit ticket.... vergleichen. Das ist nicht bequem, aber möglich.
...
Gehen Sie selbst durch die Zeilen und sehen Sie nach, ob sie leer sind oder nicht.
Der Artikel Trading Expert Advisor mit GUI: Füllen mit Funktionalität (Teil II) zeigt im Detail, wie dies umgesetzt werden kann.
Juer:
...
Können Sie mir auch etwas über die Sortierung sagen. Ich muss eine Zeile in der Tabelle analog zu der auf der Registerkarte Handel erstellen. Eine Zeile, die den Gewinn aus offenen Positionen, Provisionen usw. zusammenfasst. Das heißt, die Spalten dieser Zeile werden dieselben sein wie in der Tabelle, aber mit Gesamtwerten. Wie kann ich also diese Zeile an die erste Stelle der Liste setzen, ohne dass eine Sortierung vorgenommen wird?
In der Bibliothek gibt es keine solche Möglichkeit. Als Option können Sie eine zweite Tabelle ohne Überschriften mit einer Zeile über der ersten Tabelle erstellen und darin die Gesamtwerte ausgeben.
Gehen Sie selbst durch die Linien und sehen Sie nach, ob sie leer sind oder nicht.
Der Artikel Trading Expert Advisor mit GUI: Füllen mit Funktionalität (Teil II) zeigt im Detail, wie es umgesetzt werden kann.
Die Bibliothek verfügt nicht über diese Funktion. Optional können Sie eine zweite Tabelle ohne Überschriften mit einer Zeile oberhalb der ersten Tabelle erstellen und darin die Gesamtwerte ausgeben.
In dem Beispiel im Artikel ist die Anzahl der Zeilen konstant, aber meine ist dynamisch. Aber ich habe festgestellt, dass ich das von Hand machen muss.
Die zweite Tabelle von oben ist keine schlechte Lösung, aber wie geht man damit um, wenn sich die Breite der Spalten in der Haupttabelle ändert...? Wie synchronisiert man sie mit der zweiten Tabelle?
Eine andere Frage. Wenn ich die erste Spalte habe, gibt sie einfach die Seriennummer des Datensatzes an. Sie unterliegt nicht der Sortierung. Gibt es eine Möglichkeit, eine bestimmte Spalte unsortiert zu machen?
In dem Beispiel in dem Artikel ist die Anzahl der Zeilen konstant, aber meine ist dynamisch. Aber ich verstehe es, es ist handgemacht, also was ist daran falsch.
Wo haben Sie eine konstante Anzahl von Zeilen gesehen? Die Anzahl der Positionen und die Anzahl der verwendeten Zeichen ändert sich, und diese Änderungen spiegeln sich in den Tabellen wider.
Juer:
Die zweite Tabelle von oben ist keine schlechte Lösung, aber was ist mit der Änderung der Spaltenbreite in der Haupttabelle...? Wie kann man das mit der zweiten Tabelle synchronisieren?
Eine andere Frage. Wenn ich die erste Spalte habe, gibt sie einfach die Seriennummer des Datensatzes an. Sie unterliegt nicht der Sortierung. Gibt es eine Möglichkeit, eine bestimmte Spalte unsortiert zu machen?
Nein, es gibt keine Möglichkeit.
Wo haben Sie eine konstante Anzahl von Zeilen gesehen? Die Anzahl der Positionen und die Anzahl der verwendeten Zeichen ändert sich, und diese Änderungen spiegeln sich in den Tabellen wider.
Ehrlich gesagt verstehe ich nicht wirklich, wie Sie die Positionen dort aktualisieren. Ich sehe, dass Sie zur Aktualisierung der Zeichentabelle einfach alle Zeilen löschen. Aber ich verstehe noch nicht, wie die Positionstabelle aktualisiert wird:
Ich verstehe etwas nicht. Wenn es weniger Symbole als Zeilen in der Tabelle gibt, wird sie einfach nicht aktualisiert?
Ich muss die Werte eigentlich bei jedem Tick aktualisieren. Wie korrekt wäre es, alle Zeilen zu löschen und die Tabelle jedes Mal neu zu füllen?
Juer:
Ich muss die Werte tatsächlich bei jedem Tick aktualisieren. Wie korrekt wäre es, alle Zeilen zu löschen und die Tabelle jedes Mal neu zu füllen?
Wenn Sie nur die Werte aktualisieren müssen, brauchen Sie nichts zu löschen.
Wenn Sie die Anzahl der Zeilen in der Tabelle ändern müssen, können Sie dies wie folgt tun.
Die zweite Möglichkeit ist die Verwendung der Methode CTable::Rebuilding(). Allerdings müssen Sie dann einige Tabelleneigenschaften (Überschriften, Spaltenbreiten usw.) erneut einstellen.