Diskussion zum Artikel "Grafische Interfaces X: Erweitertes Management von Listen und Tabellen Code Optimierung (build 7)" - Seite 12

 
Anatoli Kazharski:

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, sehen Sie eine der Möglichkeiten, dies zu tun.

Die zweite Möglichkeit ist die Verwendung der Methode CTable::Rebuilding(). Aber dann müssen Sie einige Tabelleneigenschaften erneut einstellen (Überschriften, Spaltenbreiten usw.).

Danke, ich werde es mir noch einmal ansehen.

Aber ich habe CCanvasTable. Was ist der Unterschied zwischen CCanvasTable und CTable? Es scheint, dass ich eine Tabelle mit CCanvasTable normalerweise erstellen....

 
Juer:

Danke, ich werde mir das noch einmal ansehen.

Aber ich habe CCanvasTable. Was ist der Unterschied zwischen CCanvasTable und CTable? Ich denke, ich kann eine Tabelle mit CCanvasTable normal erstellen....

Laden Sie die neueste Version der Bibliothek: EasyAndFast und aktualisierte Dateien mit Klassen in diesem Artikel: Trade Expert Advisor mit GUI: Füllen mit Funktionalität (Teil II).

Verwenden Sie die Klasse CTable. CCanvasTable ist eine sehr alte Version mit minimalen Funktionen.

 
Juer:

Ich habe es heruntergeladen, aber ich kann die Methode IsSortedColumnIndex() oder ihr Analogon nicht finden.

...aktualisierte Dateien mit Klassen in diesem Artikel: Trading Expert Advisor mit GUI: Füllen mit Funktionalität (Teil II)

CTable-Klasse:

   //--- (1) aktuelle Sortierrichtung, (2) sortierter Array-Index
   int               IsSortDirection(void)             const { return(m_last_sort_direction);    }
   int               IsSortedColumnIndex(void)         const { return(m_is_sorted_column_index); }
 
Juer:

...

DeleteColumn(), DeleteRow() sind ebenfalls verschwunden.

Vielleicht muss ich nur ein wenig vorsichtiger sein?

   //--- Wiederaufbau der Tabelle
   void              Rebuilding(const int columns_total,const int rows_total,const bool redraw=false);
   //--- Fügt der Tabelle eine Spalte mit dem angegebenen Index hinzu
   void              AddColumn(const int column_index,const bool redraw=false);
   //--- Löscht eine Spalte in der Tabelle mit dem angegebenen Index
   void              DeleteColumn(const int column_index,const bool redraw=false);
   //--- Fügt der Tabelle eine Zeile mit dem angegebenen Index hinzu
   void              AddRow(const int row_index,const bool redraw=false);
   //--- Löscht eine Zeile in der Tabelle mit dem angegebenen Index
   void              DeleteRow(const int row_index,const bool redraw=false);
   //--- Löscht alle Zeilen
   void              DeleteAllRows(const bool redraw=false);
   //--- Löscht die Tabelle. Es bleiben nur eine Spalte und eine Zeile übrig.
   void              Clear(const bool redraw=false);
 
Anatoli Kazharski:

...aktualisierte Dateien mit Klassen in diesem Artikel: Trading Expert Advisor mit GUI: Füllen mit Funktionalität (Teil II)

CTable-Klasse:

Ich entschuldige mich, mein Fehler. Ich kopiere an eine Stelle und suche in einem anderen MetaEditor. Danke.