2013-04-05 53 views
1

我只需要在delphi中取消选择一个树形视图的项目。在delphi中取消选择树形视图的元素

这里我的失败尝试:

1)TreeView1.Selected.Selected := False;

2)TreeView1.Selected.Data := nil;

3)TreeView1.Select(nil,[]);

4)

for i := 0 to TreeView1.Items.Count - 1 do 
     TreeView1.Items[i].Selected := false; 

5)

TreeView1.MultiSelect := true; 
    for i := 0 to TreeView1.Items.Count - 1 do 
     TreeView1.Items[i].Selected := false; 
     TreeView1.MultiSelect := false; 

6)

var 
nulla : TTreeNode; 

nulla := nil; 
TreeView1.Select(nulla, []); 

7)TreeView1.ClearSelection(False);

8)TreeView1.ClearSelection(True);

他们都崩溃我的程序(除了8,它根本不做任何事情),我该怎么做?
我的目标是简单地取消选择白色空间上的点击。

+0

类似的问题,[德尔福:取消选择树视图中的选定项目](http://stackoverflow.com/q/6837813/576719)。但你似乎已经尝试了所有提出的解决方案。 – 2013-04-05 14:51:18

回答

3

TTreeView.Selected属性设置为nil或将TTreeNode.Selected属性设置为False是正确的方法。

如果TTreeView.Selected已经是nil,则1和2会崩溃,但其他方法应该可以正常工作,前提条件是TTreeView指针是一个有效的指针。

相关问题