mylist里边保存的是TTreeNode类的列表。
第一个函数用于获取名字为prm的TTreeNode实例
第二个函数用于将名字为prm的Node设置为snode不过说句老实话,请不要介意。这样的代码简直就是垃圾,是谁写的啊?

解决方案 »

  1.   

    zengyufeng(御风)你好,我也是在网上无意中发现的你有什么更好的方法或方式吗?请赐教。 
      

  2.   

    就是如何从数据库中读数据在TREEVIEW中生成目录树的问题,我用上面这种方式运行非常慢不知怎么搞的。
      

  3.   

    SetNode修改如下:procedure setnode( mylist: TList; prm: string; snode: TTreeNode );
    var
      i: Integer;
      pp: pobj;
    begin
      pp := nil;
      for i := 0 to myList.Count - 1 do
      begin
        if prm = Pobj( myList[i] )^.namenode then
        begin
          pp := PObj(MyList[i[)^.snode;
          break
        end;
      end;
      if pp = nil then
      begin
        new( pp );
        mylist.add( pp );
      end;
      pp^.namenode := prm;
      pp^.snode := snode;
    end;
      

  4.   

    pp := PObj(MyList[i])^.snode;这句话通不过’TTREENODE‘ AND ’POBJ‘类型不符
          
      

  5.   

    呵呵,我写错了,应该是:pp :=  PObj(MyList[i]);