//下面是一个简单的例子,其他的参考着修改一下 procedure TForm1.Button2Click(Sender: TObject); var ChildNode: TTreeNode; begin if TreeView1.Selected = nil then exit; if TreeView1.Selected.Parent <> nil then begin ShowMessage(TreeView1.Selected.Parent.Text); //父节点 ChildNode := TreeView1.Selected.getFirstChild; while ChildNode <> nil do begin ShowMessage(ChildNode.Text); //当前节点的子节点 ChildNode := ChildNode.getNextSibling; end; end; end;
OnChange event procedure(Sender: TObject; Node: TTreeNode) of objecttn := node.Parent; if tn <> nil then tn2 := tn.Parent;
点子节点,通过TreeView.Selected.Parent得到父节点。 孙节点类推
//下面是一个简单的例子,其他的参考着修改一下 procedure TForm1.Button2Click(Sender: TObject); var ChildNode: TTreeNode; begin if TreeView1.Selected = nil then exit; if TreeView1.Selected.Parent <> nil then begin ShowMessage(TreeView1.Selected.Parent.Text); //父节点 ChildNode := TreeView1.Selected.getFirstChild; while ChildNode <> nil do begin ShowMessage(ChildNode.Text); //当前节点的子节点 ChildNode := ChildNode.getNextSibling; end; end; end;
procedure TForm1.Button2Click(Sender: TObject);
var
ChildNode: TTreeNode;
begin
if TreeView1.Selected = nil then exit;
if TreeView1.Selected.Parent <> nil then
begin
ShowMessage(TreeView1.Selected.Parent.Text); //父节点
ChildNode := TreeView1.Selected.getFirstChild;
while ChildNode <> nil do
begin
ShowMessage(ChildNode.Text); //当前节点的子节点
ChildNode := ChildNode.getNextSibling;
end;
end;
end;
我的意思是:当点击孙节点(第3层),如何获取子节点(第2层),和父节点(第1层),?
谢谢!!应该如何搞??
procedure(Sender: TObject; Node: TTreeNode) of objecttn := node.Parent;
if tn <> nil then tn2 := tn.Parent;
孙节点类推
procedure TForm1.Button2Click(Sender: TObject);
var
ChildNode: TTreeNode;
begin
if TreeView1.Selected = nil then exit;
if TreeView1.Selected.Parent <> nil then
begin
ShowMessage(TreeView1.Selected.Parent.Text); //父节点
ChildNode := TreeView1.Selected.getFirstChild;
while ChildNode <> nil do
begin
ShowMessage(ChildNode.Text); //当前节点的子节点
ChildNode := ChildNode.getNextSibling;
end;
end;
end;