//用个递归,设Node是选中结点,只要这样BrowserNode(Node);procedure BrowserNode(Node: TTreeNode)var i: integer;begin //安全检查 if not Assigned(Node) then exit; //1.处理这个结点,如: //Node.Text...... //2.再对这个结点递归 for i:= 0 to Node.Count-1 do BrowserNode(Node.Item);end;
//以TreeView为例,把选中结点下的全部子结点读到ComboBox中//1.TreeView的OnChange事件写一行代码procedure TForm1.TreeView1Change(Sender: TObject; Node: TTreeNode);begin BrowserNode(Node);end;//2.BrowserNode过程procedure TForm1.BrowserNode(Node: TTreeNode)var i: integer;begin //安全检查 if not Assigned(Node) then exit; //赋值到StringList ComboBox1.Items.Add(Node.Text); //再对这个结点递归 for i:= 0 to Node.Count-1 do BrowserNode(Node.Item);end;