如何取得treeview中各项item的index
比如以下树形.test
  test1
  good
  sky相对应的index就是
1
  2
  3
  4请问如何得到。我有用。

解决方案 »

  1.   

    treeview1.Selected.AbsoluteIndex 可获得其绝对值 for r:=0 to treeview1.items.count-1 do
     showmessage(inttostr(treeview1.items.item[r]).AbsoluteIndex);
      

  2.   

    var i:integer;
    begin
      for i:=0 to treeview1.Items.Count-1 do
      begin
         memo1.Lines.Add(inttostr(treeview1.Items[i].Index));
      end;
      

  3.   

    procedure TForm1.Button1Click(Sender: TObject);
    var
      Tn,Tn_Child : TTreeNode;
    begin
      Tn := TreeView1.Items.AddChild(nil,'test');
      TreeView1.Items.AddChild(Tn,'test1');
      TreeView1.Items.AddChild(Tn,'good');
      TreeView1.Items.AddChild(Tn,'sky');
      Tn.Expanded := True;
    end;
      

  4.   

    看错了,呵呵
    同意楼上的
    不过index应该是
      0
        1
        2
        3
      

  5.   

    能不能不用for循环,就鼠标点到一个item就得到他的index
      

  6.   

    procedure TForm1.TreeView1Click(Sender: TObject);
    var
      i:integer;
    begin
        for i := 0 to TreeView1.Items.Count - 1 do
        begin
          if TreeView1.Items.Item[i].Selected then
            ShowMessage('该结点的index值为:' + IntToStr(i));
        end;
    end;
      

  7.   

    同意shehyde(冰雕) ( ) 信誉:97 
    treeview1.Selected.AbsoluteIndex 可获得其绝对值 for r:=0 to treeview1.items.count-1 do
     showmessage(inttostr(treeview1.items.item[r]).AbsoluteIndex);
      

  8.   

    procedure TForm1.TreeView1Click(Sender: TObject);
    var
      i:integer;
    begin
       ShowMessage('该结点的index值为:' + IntToStr(TreeView1.Selected.AbsoluteIndex));
    end;来晚了,顶
    呵呵