有关DBGridEh控件的问题(20分)

  • 主题发起人 fanxin119
  • 开始时间
F

fanxin119

Unregistered / Unconfirmed
GUEST, unregistred user!
现在我遇到这么一个问题请大家帮助:我用了一个DBGridEh控件,它里面的列的字段是和数据库绑定的,我现在需要对它里面的记录进行操作,当几条记录的某个字段值内容一样的时候,那么这条记录在这个字段上只显示一遍,后面一样的都不显示,例如有用户名 年龄 电话三个字段,里面有两个用户名叫张三的,那么这时在界面上只显示一个张三,另一个不显示,呵呵 就这样,该怎么操作啊?对DBGridEh控件里的记录进行某个字段的比较该怎么写啊?谢谢了
 
就是合并单元格的效果吧,估计这个控件不行。
 
DBGridEh.Column[0].HideDuplicates=True 即可实现
 
从SQL语句可以避免这个问题吧
 
select distinct * from
 
to:李翔鹏 这个应该不是合并单元格的问题,而只是让相同的某些记录的某些字段内容不显示而已 呵呵
to:lucky.gong 从语句该如何避免?我现在并不是说如果用户名相同,那么这个字段的所有字段内容都不显示 只显示一条记录 而是说如果用户名相同,那么这条记录的某些字段内容可以不显示,而另一些需要显示,比如说我举的例子,如果用户名相同而年龄,电话不同的话,那么第二条记录的用户名不用显示,而年龄 电话要显示
to 地质灾害: 解释同上,呵呵 谢谢大家了,至于二楼那个朋友的答案,我会尽快试试看的 谢了
 
DBGridEh.Column[0].HideDuplicates=True
 
对于DBGridEh.Column[0].HideDuplicates=True这个方法,为什么我在 DBGridEh1.Column[0].后面点不出来后面的HideDuplicates这个属性啊?怎么回事?还有 能不能介绍下这个属性是什么作用?谢谢啦
 
加进字段如果没有话,如果有话说明别的地方写的有错误,你就直接写上,看提示什么再说
 
HideDuplicates
 
我在程序里就是直接在函数里写了这个DBGridEh1.Columns[0].HideDuplicates := true;但是编译的时候报错:Undeclared identifier: 'HideDuplicates',这个应该怎么解决啊?
 
4.0一下版本没这个属性
如果没有可以升级控件
 
啊? 原来是这个原因啊?那我升级了控件以后,现在的代码里的东西需要重新修改嘛?还是说直接装了新的控件就行?
 
直接设置属性就可以了,
其他不是特殊应用,基本没什么改变
 
我卸载了原来的3.4版本,换了现在的4.2.16版本,但是不知道哪一步没弄好,在安装的时候总是报错 说Unit PrnDbgeh was compiled with a different version of DBGridEh.TColCellParamsEh,哦,对了,我刚开始只安装了common文件夹下的那个包,但是编译的时候提示好几个控件都没有声明,所以我又试着装了一下delphi7下的那个包 结果就报错了 不知道该怎么操作啊?
 
好啦 我把那个安装的问题搞定了 但现在出了个新问题啊,就是我有好多条记录,比方说用户名为aaa的有好多条,用户名为bbb的也有好多条,但是现在我在用了这个HideDuplicates 属性后,用户名为aaa的倒是只出现了一次,其余用户名也为aaa的记录他们的用户名都没有出现,这个是对了,但问题是现在出现的只有用户名为aaa的记录了,而bbb的和其他的记录怎么都没有出现了啊?怎么回事?还需要设置什么嘛?
 
多人接受答案了。
 
还有一点疑问,就是使用了HideDuplicates 属性后,它对目标的合并只是针对列 而不是针对行,而且当列内容一样的时候,它连行之间的边框也没有了,这样就出现了问题 ,比如我现在有三条记录 111 aaa bbb ;111 aaa ccc;222 aaa ddd,我只需要当用户名为111的时候,它的第二列aaa的记录出现一次,而用户名为222的记录的第二列也要显示,但现在连222的aaa也不显示了,呵呵,我该怎么对行来操作这个属性呢?,再有,我希望当这个属性为true的时候,原来的边框仍然存在,那么该操作哪个属性?
 
自己顶起来
 
自己顶起来
 
顶部