delphi DBGridEH控件的checkbox如何判断是否选中,求指导 !

yc_chongchong 2012-10-26 05:26:27
我想做一个批量删除的功能,用到了DBGridEH 的checkbox,想问如何判断checkbox是否被选中?
...全文
1066 13 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
babydog01 2012-10-31
  • 打赏
  • 举报
回复
有个属性dbMultiSelect为true后就可以多选了。
babydog01 2012-10-31
  • 打赏
  • 举报
回复
楼主是要实现多选后删除的操作。

其实dbgrideh和cxgrid都支持行多选的,你选中多行后,再用10楼的方法,删除即可。

不用加那个checkbox。
yc_chongchong 2012-10-30
  • 打赏
  • 举报
回复
有没有可以不用在数据库建立字段 ,但是可以有这个多选框的效果 的方法
kaikai_kk 2012-10-29
  • 打赏
  • 举报
回复
1.循环判断,然后dataset.delete;
2.或者循环时保存要删除的key,最后再执行delete的SQL语句
3.或者在选择的时候,就把选中行的key加入到某个列表中(当然取消选中时,就去掉),然后根据列表中的数据再做删除
我看见佛 2012-10-28
  • 打赏
  • 举报
回复
这个功能实现挺简单的,我帮一个朋友做过一个教程。你需要的话可以M我Q251450368
yc_chongchong 2012-10-27
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 的回复:]
建个临时字段fCheck Boolean类型的 ,选中了fCheck:=true;
[/Quote]
如何做批量删除呢,给个代码看看哈,
jmahqh 2012-10-27
  • 打赏
  • 举报
回复
建个临时字段fCheck Boolean类型的 ,选中了fCheck:=true;
yc_chongchong 2012-10-27
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 的回复:]
不太明白你的意思,既然你表内有多个复选框,就说明表不是空的。
复选框在DBGridEh中就是一个Boolean类型的字段值,该值为True,则选中,为false,则未选中。
所以,你只需判断该DbGridEh所在列的值就行了。
[/Quote]

能给我写一些代码看看吗
我用的是Clientdataset做的,你直接写如何删除复选框被选中的列,谢谢了!
zhengyc653 2012-10-27
  • 打赏
  • 举报
回复
不太明白你的意思,既然你表内有多个复选框,就说明表不是空的。
复选框在DBGridEh中就是一个Boolean类型的字段值,该值为True,则选中,为false,则未选中。
所以,你只需判断该DbGridEh所在列的值就行了。



yc_chongchong 2012-10-26
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 的回复:]
直接判断表内的字段值就行了。

DBGridEH1.FieldByName('CheckField').AsBoolean
[/Quote]
我表中的值是空的 没值 只是为了让DBGridEh有复选框的效果 ,我只要判断哪个复选框被选中了,然后批量删除
zhengyc653 2012-10-26
  • 打赏
  • 举报
回复
直接判断表内的字段值就行了。

DBGridEH1.FieldByName('CheckField').AsBoolean
yc_chongchong 2012-10-26
  • 打赏
  • 举报
回复
坑爹呀 来个人吧
yc_chongchong 2012-10-26
  • 打赏
  • 举报
回复
怎么木有人,本人是新手,求指导啊

5,928

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧