在TREEVIEW里怎样让程序一开始就选种其中的一个ITEM???(100分)

  • 主题发起人 主题发起人 waif
  • 开始时间 开始时间
W

waif

Unregistered / Unconfirmed
GUEST, unregistred user!
在TREEVIEW里已经建立了几个ITEM,
比如要求程序一开始就选中第3个ITEM,该怎么办?
 
试试这个办法。
procedure TForm1.FormCreate(Sender: TObject);
...
treeview1.Items[3].Selected := true;
treeview1.Items[3].EditText ;
treeview1.Items[3].EndEdit (true);
 
procedure TForm1.FormCreate(Sender: TObject);
var
MyTreeNode1, MyTreeNode2: TTreeNode;
begin
with TreeView1.Items do
begin
MyTreeNode1 := Add(nil, 'RootTreeNode1'); { Add a root node }
{ Add a child node to the node just added }
MyTreeNode1.Selected :=True;{Be Selected}
AddChild(MyTreeNode1,'ChildNode1');
....
end;
end;
 
很简单呀。
在Form的FormCreate事件中,加入一句就可以啦。
源程序如下:

procedure TForm1.FormCreate(Sender: TObject);
begin
TREEVIEW1.Items.Item[2].Selected:=TRUE;
end;

选中的就是第三个Item。
在Treeview中,0是第一个item,1是第二个,以此类推。
如果有子节点的话,在子节点全部展开的情况下,从上往下数,第一个是0,第二个是……
如在Treeview中有A,B,C,D四个节点,在C下面又有F,G,H三个子节点,结构如下:

|-A
|-B
|-C
| |-- F
| |-- G
| |-- H
|-D

那么,选G这个节点,就是

TREEVIEW1.Items.Item[4].Selected:=TRUE;

FormCreate事件在窗体被创建时触发,即可近似的理解为实在程序一开始时触发。
 
with TreeView1 do Selected:=Items[2];
 
这问题还等什么
 
TreeView1.Selected := TreeView1.Items[2];
 
多人接受答案了。
 
后退
顶部