谁能提供个把数据库显示在TREEVIEW里的例子,并有添加、删除任意层次接点的数据!!!

解决方案 »

  1.   

    你的问题不是技术问题,只是时间问题。可惜我的源代码涉密,否则可以送你一份,尽管有好几百行。还是提些有价值的建议吧:
    (1)需要构造一个记录类型TMyRec来存放一行数据库表的记录;
    (2)需要构造一个类型指针PMyRec来指向一个TMyRec记录;
    (3)根据数据库表创建每个节点时,用New过程来申请内存,将数据存放在相应的PMyRec中,并将该类型指针赋给当前节点的Data指针;
    (4)在删除每个节点时,检查Data指针是否为nil,根据需要用Dispose释放相关内存,然后将Data指针置为nil;
    也就是说,关键技术在于如何利用类型指针以及动态申请和释放内存。
    注意:创建新节点时和删除节点时,需要在数据库中完成相应的操作。
      

  2.   

    cnsuyong(小可) :
    你的方法是不是慢了一点?如果有10000条数据证明办?如果是master/detail型的怎么办?
      

  3.   

    我这里有一个,TREE联数据库另外还有些其它功能。
    但动态生成查找字段和REPORT有些BUG,正好你自已看看了。
    这里下载。
    www.langmanshop.com/personal/myfiles/DataTree.exe
    别忘给分。
      

  4.   

    Leojb() :
    关于TreeView。
    当然不慢!因为你可以一次只打开一层,在OnExpanding事件中根据需要确定是否打开下一层。就象Windows的资源管理器一样,只有打开过的文件夹再次浏览时很快,而第一次打开的就相对比较慢。事实上,我研发的一个项目中,需要列出的商品条目高达8万余项,通过动态创建也只需要弹指一挥间。怎么样,尝试一下吧?思路已经很清晰了,你能实现吗?