在DATAGRID加了个CHECKBOX,如何用SHIRT键来选择多行?

cgsun 2006-09-19 01:16:11
在DATAGRID加了个CHECKBOX,如何用SHIRT键来选择多行?
如我先选第一行,然后按住SHIFT,选第三行的CHECKBOX,前三行都选中
...全文
213 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
HAVENT 2006-09-21
  • 打赏
  • 举报
回复
Grid本身就有Shift/Ctrl多选功能,利用SelectedItem就能获取应该勾选的CheckBox了,这个比我前面的方法应该要简单些
HAVENT 2006-09-21
  • 打赏
  • 举报
回复
重写窗体的ProcessCmdKey事件
当Shift键按下,全局变量CheckALL=True
If KeyData=Keys.Shift Then
If CheckALL=True Then : CheckALL=False
Else : CheckALL=True : End If
End If

然后在在Grid鼠标点击事件中判断CheckBox是否被选中,并且全局变量CheckALL是否为True即可
阿牛138588 2006-09-20
  • 打赏
  • 举报
回复
不知道
  • 打赏
  • 举报
回复
在CHECKBOX的点击事件里不是可以判断CTRL,ALT,SHIFT这些功能键的状态嘛!

1.正常点击时(SHIFT键没按下),用一个全局变量记录当前所点的CHECKBOX
2.当判断出当前SHIFT键被按下,就从当前CHECKBOX去FOR到全局变量所记录的CHECKBOX(大小先比较一下,然后FOR)都设为选中.

这样,不仅SHIFT下面好使,反过来,先点下面的,SHIFT上面,也会都选上.

这样EASY的问题也不自己稍微动脑想想?? 起码说明你还不专业.
xlshen_lxz 2006-09-19
  • 打赏
  • 举报
回复
帮顶,关注
lengxiaowei 2006-09-19
  • 打赏
  • 举报
回复
关注
huangbznet 2006-09-19
  • 打赏
  • 举报
回复
我个人的做法是在前面加个CHECKBOX控件,没有SHIFT功能,直接让客户自己点去,想点几个就点几个
hejunbin 2006-09-19
  • 打赏
  • 举报
回复
看看datagrid里面的属性,是否有这个的支持。。。
Knight94 2006-09-19
  • 打赏
  • 举报
回复
to 在DATAGRID加了个CHECKBOX,如何用SHIRT键来选择多行?
如我先选第一行,然后按住SHIFT,选第三行的CHECKBOX,前三行都选中

winapp?
通过RowHeader来进行多选。
happilygirl 2006-09-19
  • 打赏
  • 举报
回复
mark

16,554

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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