我正在使用带有虚拟树视图的Delphi XE3。如果multiselect为False,则如何在虚拟树视图中获取当前选定的节点。我在文档中找到了一个相关的方法:
TBasedVirtualTree.Selected []:这需要一个PVirtualNode作为索引来获取选择状态。
但不会给出当前选定的节点。
我将描述如何尝试找出解决方案的过程:
首先,我尝试使用关键字“ Selected”在Virtual TreeView的帮助文档中搜索。然后,我将获得71个结果。在其中找到TBaseVirtualTree.Selected属性,但这需要PVirtualNode作为索引。
然后在帮助文档的右上角,我尝试查找相关属性,但是只能找到SearchBuffer和SelectedCount,前者是不相关的,后者是获取选定的节点数,而不是当前的选定的节点。
这也是一个可以获取所选节点数组的函数。但是,当我尝试调用它时,发现它不可用。
这就是我发布此问题的原因。
谢谢
答案 0 :(得分:0)
在TBaseVirtualTree
中声明:
function GetFirstSelected(ConsiderChildrenAbove: Boolean = False): PVirtualNode;
请注意,您可能有几个选定的节点,要转到其他节点,请致电
function GetNextSelected(Node: PVirtualNode; ConsiderChildrenAbove: Boolean = False): PVirtualNode;