如何在虚拟树视图中获取当前选定的节点

时间:2018-11-21 01:40:25

标签: delphi virtualtreeview

我正在使用带有虚拟树视图的Delphi XE3。如果multiselect为False,则如何在虚拟树视图中获取当前选定的节点。我在文档中找到了一个相关的方法:

TBasedVirtualTree.Selected []:这需要一个PVirtualNode作为索引来获取选择状态。

但不会给出当前选定的节点。

我将描述如何尝试找出解决方案的过程:

  1. 首先,我尝试使用关键字“ Selected”在Virtual TreeView的帮助文档中搜索。然后,我将获得71个结果。在其中找到TBaseVirtualTree.Selected属性,但这需要PVirtualNode作为索引。

  2. 然后在帮助文档的右上角,我尝试查找相关属性,但是只能找到SearchBuffer和SelectedCount,前者是不相关的,后者是获取选定的节点数,而不是当前的选定的节点。

  3. 这也是一个可以获取所选节点数组的函数。但是,当我尝试调用它时,发现它不可用。

这就是我发布此问题的原因。

谢谢

1 个答案:

答案 0 :(得分:0)

TBaseVirtualTree中声明:

function GetFirstSelected(ConsiderChildrenAbove: Boolean = False): PVirtualNode;

请注意,您可能有几个选定的节点,要转到其他节点,请致电

function GetNextSelected(Node: PVirtualNode; ConsiderChildrenAbove: Boolean = False): PVirtualNode;