我在一个dxDBTreeView中,设置了keyfield='id',parentfield='pid',listfield='name',树形显示是没有问题,但是在程序中如何获取选中项的id值,也就是keyfield的值?  
在dxDBLookupTreeView中也有这个问题,不知道怎么解决啊?  
达人帮忙啊!

解决方案 »

  1.   

    如果你用的数据集是adoquery的话,直接在数据集中获得就可以了,在dxDBTreeView的onclick事件里写
    var getid:integer;
    begin
    getid :=adoquery1.fieldbyname('id').asinteger;
    end;getid就是你想得到的id值
      

  2.   

    楼上的达人,小弟是初次接触delphi,希望多多指点,分数肯定是没问题的
    上面的问题已经解决了,再问个关于这个控件的问题
    如何用代码实现通过指定的ID来选中一个结点?
      

  3.   

    用locate方法来定位
    adoquery1.Locate(字段,字段值,[locaseInsensitive]);
    如果你想定位到id为3的节点,只需把adoquery1定位到id为3的记录就可以了
    adoquery1.Locate('id','3',[locaseInsensitive]);
      

  4.   

    用dxDBTreeView这个控件遇到新问题了
    当我关掉整个窗口后,也就是这个窗口被销毁了,在dxDBTreeView中用到的表的记录全被清空了,这是怎么回事啊?
      

  5.   

    那肯定了,你关闭以后,记录集也关闭了,你在设计期间把记录集打开,dxDBTreeView可以显示数据了
      

  6.   

    记录集关闭,数据库里的记录怎么会清空,这只是断绝了记录集与数据库的联系,所以dxDBTreeView里就没有数据了
    兄弟,再这么问就没完了,书上讲的都很清楚
      

  7.   

    可我的程序真的是一旦关闭窗口就把数据库的记录清空了,不知道怎么回事啊
    大哥,你有这方面的详细资料吗
    传一份给我可以吗,我的email:[email protected]
    我就是没资料看才有这么多问题啊
    我只有一本<delphi7控件使用程序设计100例>,可是那个里面对每个控件只是一笔带过,讲的太浅了,所以现在有很多问题都不知道怎么来解决
      

  8.   

    哦,Delphi区果然人才济济!!!
      

  9.   

    我现在在用delphi开发一个考勤管理系统,可我以前只用过vc和java,接触delphi才半个月的时间,主要是对delphi里的这些控件的用法都不熟悉,如果大哥有关于delphi里这些控件的用法的详细资料,而且能传给我一份的话,小弟感激不尽啊!
      

  10.   

    我主要用到的是一些常用的控件:
    dxDBGrid,dxDBTreeList,dxDBTreeView,dxDBLookupTreeView等。
    数据库都是用的ADO组件。
    大哥有这方面的资料吗?
      

  11.   

    我现在又遇到问题了
    在dxDBGrid里怎样得到选中项的主键值啊?
    好像用adoquery1.fieldbyname('id')不行啊。
    我是想做一个修改和一个删除的操作。
      

  12.   

    faint,dx系列的都是三方空件,资料不好找,加我qq
    275558242
    我有一本控件使用的书,很大,你要用的话传给你