不是所有节点,是选定节点下的所有子节点
选定一个节点后,遍历到最后一个叶子

解决方案 »

  1.   

    function TForm1.delnode(node1:TTreenode):TTreenode;
    var
        childnode:TTreenode ;
    begin
        childnode:=Treeview1.Selected.GetLastChild;
        while childnode.Text<>'楼主要求' do
        begin
            childnode:=childnode.parent.GetPrevChild(childnode);
            childnode:=delnode(childnode);
        end;
        ShowMessage(childnode.Text);end;
      

  2.   

    首先感谢你的回复还有问题,这个过程好像只能处理一层,而且必须知道最后节点的text
    我要遍历下级,下下级....直到最后,几级不定,而且节点text不知
      

  3.   

    用递归:
    function TForm1.delnode(node1:TTreenode):TTreenode;
    var
        childnode:TTreenode ;
    begin
        childnode:=Node1.getFirstChild;
        while childnode.Parent=Node1 do
        begin
           if  childnode.HasChildren then //如果childnode下有子结点则递归调用.
              childnode:=delnode(childnode);
           childnode:=childnode.GetNext;
        end;
        ShowMessage(childnode.Text);end;
      

  4.   

    呵呵 楼主注意GetLastChild和getFirstChild;