delphi - 如何隐藏 TVirtualStringTree 节点?

标签 delphi virtualtreeview tvirtualstringtree

如果我没记错的话,在 a 中不可能有不可见的节点。 TVirtualStringTree TreeView ,因为没有启用、可见或其他 属性来这样做。我的说法正确吗?

如果是,我是如何设法拥有不可见节点的?

我的树的结构:

  • 一个节点
  • 另一个节点
    • 子节点1
    • 子节点2
    • ...
    • 子节点15
    • 子节点 16(不可见!)
  • 又一个节点
    • 子节点 1 来自另一个节点
    • 子节点 2 来自另一个节点

当我对子节点执行 FirstNode/GetNextNode 循环时,我可以找到子节点 16 整棵树,让我打印出第一列的文本。我可以 还检查该节点,发现他有一个前一个兄弟节点,但没有 例如下一个兄弟节点,节点高度为 18。

那么我是如何做到这一点的呢?

最佳答案

if I'm not mistaken it's not possible to have invisible nodes in a TVirtualStringTree treeview, as there are no enabled, visible or other properties to do so. Am I right about this?

你错了,有可能同时存在不可见和禁用的节点。要切换节点的可见状态,请使用

vtree.IsVisible[Node] := boolean;

启用/禁用节点使用

vtree.IsDisabled[Node] := boolean;

您还可以通过将 ivsDisabled 添加到 InitialStates 参数,在树的 OnInitNode 事件中将节点初始化为禁用状态。

关于delphi - 如何隐藏 TVirtualStringTree 节点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7165405/

相关文章:

delphi - 如何获取conhost.exe进程ID?

delphi - TVirtualStringTree,树结构的位置

delphi - TVirtualStringTree ScaleBy Stretch

delphi - Delphi字符串中的字符如何转义

.net - 在 Delphi Win32 中嵌入 Mono

delphi - 带有线程的“正在工作,请稍候”屏幕?

c++ - IID_IDropTarget 和 Virtualtrees::IID_IDropTarget 之间的歧义

delphi - Delphi:组件生成-关联TVirtualStringTree

delphi - 更改 VirtualTreeView 中的拖动光标

delphi-7 - VirtualStringTree如何释放多个节点