文章 "图形界面 X: 高级列表和表格管理。代码优化 (集成构建 7)" - 页 12

 
Anatoli Kazharski:

如果只需更新数值,则无需删除任何内容。

如果需要更改表格中的行数,其中一种方法如图所示。

第二种方法是使用CTable::Rebuilding() 方法。但这样你就必须重新设置一些表格属性(标题、列宽等)。

谢谢,我再看看。

但我有 CCanvasTable。CCanvasTable 和 CTable 有什么区别?似乎我用 CCanvasTable创建表格 通常....

 
Juer:

谢谢,我会再看看的。

但我有 CCanvasTable。CCanvasTable 和 CTable 有什么区别?我想我可以用 CCanvasTable 创建一个表格,通常....。

下载最新版本的库:EasyAndFast 和更新文件,其中包含本文:Trade Expert Advisor with GUI: Filling it with functionality(第二部分) 中的类。

使用CTable 类。CCanvasTable 是一个功能极少的旧版本。

 
Juer:

我下载了它,但找不到 IsSortedColumnIndex() 方法或其类似方法。

......这篇文章中的类的更新文件: 带图形用户界面的智能交易系统:填充功能(第二部分)

CTable 类:

   //--- (1) 当前排序方向,(2) 已排序数组索引
   int               IsSortDirection(void)             const { return(m_last_sort_direction);    }
   int               IsSortedColumnIndex(void)         const { return(m_is_sorted_column_index); }
 
Juer:

...

DeleteColumn() 和 DeleteRow() 也消失了。

也许我需要更小心一点?

   //--- 表重建
   void              Rebuilding(const int columns_total,const int rows_total,const bool redraw=false);
   //--- 在指定索引处向表添加一列
   void              AddColumn(const int column_index,const bool redraw=false);
   //--- 删除表格中指定索引处的一列
   void              DeleteColumn(const int column_index,const bool redraw=false);
   //--- 在指定索引处向表添加一行
   void              AddRow(const int row_index,const bool redraw=false);
   //--- 按指定索引删除表中的一行
   void              DeleteRow(const int row_index,const bool redraw=false);
   //-- 删除所有行
   void              DeleteAllRows(const bool redraw=false);
   //--- 清除表格。只保留一列和一行。
   void              Clear(const bool redraw=false);
 
Anatoli Kazharski:

......本文中包含类的更新文件: 带图形用户界面的智能交易系统:填充功能(第二部分)

CTable 类:

对不起,是我的错。我复制到了一个地方,却在另一个 MetaEditor 中查找。谢谢。