procedure TForm1.Btn_CreateTreeClick(Sender: TObject); var ID : integer; RootNode, Node : TTreeNode; begin TreeView1.Items.Clear; RootNode := TreeView1.Items.AddFirst(nil, '所有仓房'); for ID := 1 to 5 do begin Node := TreeView1.Items.AddChild(RootNode, '仓房'+IntToStr(ID)); Node.Data := Ptr(ID); end; end;procedure TForm1.Btn_TestClick(Sender: TObject); var S : string; ID : integer; begin S := '2'; for ID := 0 to TreeView1.Items.Count-1 do if S = IntToStr(integer(TreeView1.Items[ID].Data)) then begin TreeView1.Select([TreeView1.Items[ID]]); TreeView1.SetFocus; end; end;
var
ID : integer;
RootNode, Node : TTreeNode;
begin
TreeView1.Items.Clear;
RootNode := TreeView1.Items.AddFirst(nil, '所有仓房');
for ID := 1 to 5 do
begin
Node := TreeView1.Items.AddChild(RootNode, '仓房'+IntToStr(ID));
Node.Data := Ptr(ID);
end;
end;procedure TForm1.Btn_TestClick(Sender: TObject);
var
S : string;
ID : integer;
begin
S := '2';
for ID := 0 to TreeView1.Items.Count-1 do
if S = IntToStr(integer(TreeView1.Items[ID].Data)) then
begin
TreeView1.Select([TreeView1.Items[ID]]);
TreeView1.SetFocus;
end;
end;
如果单纯地确定某个节点是第几级,其实好办:反复地查找其Parent的Parent节点,最终找到Parent节点是nil,那就表示已经到根节点了。