如何为TREEVIEW中的每个节点赋与节点名无关的值,就是我想选种一个节点的时候可以返回一个数值,而与节点名不一样。在什么地方添加关于TREEVIEW的代码?我双击只能打开Items Editor.

解决方案 »

  1.   

    item[i].Data属性可以用来存放这些东东
      

  2.   

    每个节点都有一个data属性,然后你看看帮助,用一个指针就可以达到你的要求
    type
         PMyRec = ^TMyRec;
         TMyRec = record
          id: Longint;      //目录id
          Pid: Longint;     //目录pid
          strGPName:String; //对应的数据表的名称
     end; Nodetemp: TTreeNode;
      MyRecPtr: PMyRec;        New(MyRecPtr); //分配内存
            MyRecPtr^.id := 0;
            MyRecPtr^.pid := -1;
            MyRecPtr^.strGPName:= 'sfgdfg'; 
            strGP:= '123456';
            Nodetemp:=Treeview1.Items.AddChild(Node,strGP);
            Nodetemp.Data := MyRecPtr;
      

  3.   

    如果你的数据是简单整数数值,那么使用Tag属性,否则使用Data属性!!!
      

  4.   

    在什么地方添加关于TREEVIEW的代码?
    在Object Inspecter上找到你的TREEVIEW,在Events页选你要写的事件
      

  5.   

    在Delphi6/7中可以定制TreeView的节点:
    type
      TMyNode = class(TTreeNode)
      private
        ...
      public
        property ExtraData: string read GetExtraData write WriteExtraData;
      end;然后在TreeView1的OnCreateNodeClass事件中这样写:
    procedure TForm1.TreeView1CreateNodeClass(Sender: TCustomTreeView;
      var NodeClass: TTreeNodeClass);
    begin
      NodeClass := TMyNode;
    end;这时就可以这样创建节点:
    procedure TForm1.Button3Click(Sender: TObject);
    var
      MyNode: TMyNode;
    begin
      MyNode := TreeView1.Items.AddChild(nil, 'Root') as TMyNode;
      MyNode.ExtraNode := 'Hello World';
    end;
      

  6.   

    to:Linux2001
    “item[i].Data属性可以用来存放这些东东”我应该在哪个事件中加相应的代码?
      

  7.   

    我的意思是在程序运行前就把节点和响应的INT值设定了,运行中不允许修改,我应该在哪个事件中加代码?