请问treeview中,怎样判断是哪个根节点被选中

解决方案 »

  1.   

    这个你可以自己定义一个编号来区分,或者Treeview的nodes的level及index来区分,具体的自己实验.delphi安装目录下demos中有参考!
      

  2.   

    var
    node: TTreeNode;
    label ok;
    begin
      node := TreeView1.TopItem;
      while True do
      begin
        if node.HasChildren then
          node := node.GetFirstChild
        else
        begin
          while node.IsLast do
            if node.Level = 0 then
              goto ok
            else
              node := node.Parent;
          node := node.GetNextSibling;
        end;
      end;
      ok:null;  //结束
    end;  
      

  3.   

    或者你可以去Delphi自带的根目录下参考Doc的例子
      

  4.   

    function findparent:TTreenode;
    var t:TTreeNode;
    begin
       t:=TreeView1.Selected;
       while HasAsParent(T) do t:=t.Parent;
       result:=t;
    end;