【问题标题】:How to change the stateindex of a rootnode in Virtual Treeview?如何更改虚拟树视图中根节点的状态索引?
【发布时间】:2012-07-14 01:38:23
【问题描述】:

我在虚拟树视图的 Stateimages 中分配了一个 ImageList。 如何更改根节点的 stateindex?我什么也找不到。 感谢您的帮助。

【问题讨论】:

    标签: delphi delphi-7 virtualtreeview tvirtualstringtree


    【解决方案1】:

    您需要实现OnGetImageIndex 事件。在那里您可以将var ImageIndex 设置为ImageList 中图像的索引。

    如果你只需要应用到根节点,你可以检查节点是否parent = nil

    来自帮助:

    10.1.2.104 TBaseVirtualTree.OnGetImageIndex 事件

    属性 OnGetImageIndex: TVTGetImageEvent;说明

    只要树需要图像的索引,就会触发此事件, 无论是正常的、选定的还是状态图像。该活动应 尽可能快,因为它有时很频繁 当必须确定节点的布局时调用,例如 在使用鼠标绘制选择或绘制树时。种类 确定需要哪个图像,而 Column 确定需要哪个图像 需要图像的节点的列。这个值可以 -1 表示没有使用列。参数 Ghosted 可以设置为 true 以将图像与树混合 50% 背景,例如可以在资源管理器树中使用 标记隐藏的文件系统对象。此外,节点也是 如果 是切割集的一部分,则使用幻影图标绘制 挂起的剪切到剪贴板操作。在这种情况下更改重影 参数没有影响。注意 混合节点可以通过使用来切换 TreeOptions.PaintOptions 中的 toUseBlendImages。类

    【讨论】:

    • 您需要使用与委托一起传递的Kind 属性(我认为)。
    • +1,是的,Kind 事件中有 Kind 参数。当此事件被触发并且Kind 参数为ikState 时,返回您的Stateimages 图像列表中的ImageIndex
    猜你喜欢
    • 1970-01-01
    • 2011-08-01
    • 1970-01-01
    • 2019-03-22
    • 1970-01-01
    • 1970-01-01
    • 2016-07-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多