请问treeview怎么用我看了好几个例子还没不太明白!自己写一个也报错,大家给看看!
var node : ttreenode;
beging
treeview1.items.add(node,'111111');
treeview1.items.addchild(node,'22222');
end;好像不对,不太明白到底怎么创建一个树,希望能给一个简单的例子!谢谢

解决方案 »

  1.   

    为什么下面这个代码就可以运行
    procedure TForm1.Button2Click(Sender: TObject);
    var node:ttreenode;
    begin
    with treeview1.Items do
    begin
    clear;
    node:=add(node,'1111');
    addchild(node,'22222');
    end;
    end;但一楼那个代码就不行,两个有区别吗?
    如果把一楼的treeview1.items.add(node,'111111');  改成node:=treeview1.items.add(nil,'11111');就可以了
      

  2.   

    是这样的。
    你创建父节点的时候必须用NIL,此时ADD方法将返回一个节点,你把这个节点赋值给Node变量。
    然后你创建子节点就可以用Node变量了,这个子节点将以Node为父节点。
    var node : ttreenode;
    beging
    node:=treeview1.items.add(nil,'111111');
    treeview1.items.addchild(node,'22222');
    end;
      

  3.   

    两段代码都会报错的
    你的node没有指向一个ttreenode,又没有初始化为nil,会报错也很正常
      

  4.   

    procedure TForm1.Button2Click(Sender: TObject);
    var node:ttreenode;
    begin
    with treeview1.Items do
    begin
    clear;
    node:=add(node,'1111');
    addchild(node,'22222');
    end;
    end;
    这个不会报错,我也很奇怪。我觉得也应该报错,应该是node:=add(nil,'1111');