数据库表结构:ParentID Char(60),ID Char(60),Name Char(60)
节点数目肯定会达到2000-15000条,用递归调用速度相当的慢,不直到各位大侠是否有好的方法

解决方案 »

  1.   

    试试这样:(BCB代码)http://blog.csdn.net/myy/archive/2004/10/09/129886.aspx
      

  2.   

    1.先加载第一层数据,在展开节点的时候才加载该节点的数据2.数据一起取到客户端,再从DataSet中取数据建立树,这样也不会太慢如果在建立树的同时多次访问数据库就会很慢了
      

  3.   

    注意:http://blog.csdn.net/myy/archive/2004/10/09/129886.aspx这个文章中的代码是用 TStringList 来临时记录id-TreeNode对应关系,
    事实上,你可以改用其他更快的容器。因为BCB/Delphi的TStringList在内容
    很多时,性能很低下,我在BCB中实际使用就是 std::map<AnsiString, TTreeNode*>...