Delphi TVirtualStringTree:OnGetText事件中的列参数是什么?
OnGetText事件过程定义为:Delphi TVirtualStringTree:OnGetText事件中的列参数是什么?,delphi,virtualtreeview,tvirtualstringtree,Delphi,Virtualtreeview,Tvirtualstringtree,OnGetText事件过程定义为: TVSTGetTextEvent = procedure (Sender: TBaseVirtualTree; Node: PVirtualNode; Column: TColumnIndex; TextType: TVSTTextType; var CellText: UnicodeString) of object; 此事件的文档CHM帮助文件仅说明: 使用其他资源,如新闻组或Delphi Gems消息 在黑板上找到描述 我在上看到了一些其他帖子,所以在
TVSTGetTextEvent = procedure (Sender: TBaseVirtualTree; Node: PVirtualNode; Column: TColumnIndex; TextType: TVSTTextType; var CellText: UnicodeString) of object;
此事件的文档CHM帮助文件仅说明:
使用其他资源,如新闻组或Delphi Gems消息
在黑板上找到描述
我在上看到了一些其他帖子,所以在这个事件中他们在哪里检查(列<0),所以我很好奇这是什么
FWIW,我正在尝试从数据库数据实现父子树视图。您可以在虚拟树的
标题中定义列。columns
集合。传递给给定的任何事件方法的列
参数是此集合中该列的基于0的索引
Column
参数值可以是已处理列的基于0的索引,也可以是NoColumn
(其内部值为-1),这表示虚拟树中没有列。在什么情况下是(列<0)?我使用的不是Header.Columns(网格布局),而是一个适当的树视图布局。以防虚拟树中没有列。但这种测试是错误的。如果Column=NoColumn,那么它应该是。通常,如果树中没有列,则根本不需要测试此参数。列对象的Position
属性是该列的运行时位置,因为用户可能会使用拖放对列重新排序。