主从表显示正常,从表焦点只有第一条记录,不能移动。 在网上找了个方法把DATACONTROLLER中的GRIDMODE设为TRUE;
试了一下,从表焦点可以移动,
但是新问题:从表不滤了,记录全部显示,即:主表任一条记录,从表的记录都是完全一样。 CXGRID的自带的DEMO可以移动焦点的,但是的DATACONTROLLER中的GRIDMODE确没有设置成true,我把它的CXGRID控件复制到我的程序中,只改了数据库连接。运行还是不行的。 望使用过这个控件的朋友帮忙下
试了一下,从表焦点可以移动,
但是新问题:从表不滤了,记录全部显示,即:主表任一条记录,从表的记录都是完全一样。 CXGRID的自带的DEMO可以移动焦点的,但是的DATACONTROLLER中的GRIDMODE确没有设置成true,我把它的CXGRID控件复制到我的程序中,只改了数据库连接。运行还是不行的。 望使用过这个控件的朋友帮忙下
我分析还是你写的程序问题,是否从表没有获得焦点?
我之前用过cxGrid做过主从表显示。由于手头上没有开发环境,只能凭经验回复。
我觉得与DATACONTROLLER无关,印象中我首次做主从显示,从表也只能显示单条记录,但更改了一个配置项后,就可以显示多条记录并且移动焦点。好像是叫多记录匹配,MultiRecord。
有机会找到开发环境,再帮LZ看看
LZ说的是一个cxGrid中多个Level和TableView吗
从表的数据源一定要按与主表关联的字段排序 因为我是ADOguery控件,所以在SQL语句中我用了order by userid
但是还是不能移动焦点,急死了,
从表DBtableView2的keyfieldnames,DetailKeyFieldNames和MasterKeyFieldNames 就行啦,
MasterKeyFieldNames为主表关联字段,
DetailKeyFieldNames 为从表关联字段,
keyfieldnames设置就是关键,这里应该设置的是从表主字段,而不是网上很多说的跟MasterKeyFieldNames字段一样.
主表DBtableView1的keyfieldnames可以不用设置.至于为什么 从表焦点只有第一条记录,不能移动呢?
是因为从表的keyfieldnames设置不对.keyfieldnames的作用是指定从表查找记录的字段,
当设置的与MasterKeyFieldNames字段一样时,从表该字段值都是一样的,从表查找记录时,只找到第一条记录,就认为找到记录了,所以出现从表焦点只有第一条记录,不能移动的情况.
故 从表的keyfieldnames要设置为能唯一确定从表一行记录的字段,这一般为从表主键字段,当然从表某一字段不是主键,但能唯一确定从表一行记录的字段也行.