怎样判断是否按下了ctrl键或者是其它键?

zhuhuofong 2007-05-28 11:13:25
大哥,谢谢你能进来看我的帖子。
怎样判断是否按下了ctrl键或者是其它键?
...全文
786 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
goodluck123 2007-05-29
  • 打赏
  • 举报
回复
在 要检查是否按键的空间或者form上添加 keydown或者keyup事件,如果光是考虑是否按了ctrl,shift等键可以用shift参数检测,否则可以用keycode参数检测。
这种方法几乎可以检测出几乎所有按的键盘键子!

希望我的回复对你有帮助,记得给分
-------------------------------------------------------------------------------------
给你的参考资料:
keycode 是一个键代码,诸如 vbKeyF1 ( F1 键)或 vbKeyHome ( HOME 键)。要指定键代码,可使用对象浏览器中的 Visual Basic ( VB ) 对象库中的常数。
shift 是在该事件发生时响应 SHIFT 、CTRL和 ALT 键的状态的一个整数。shift 参数是一个位域,它用最少的位响应 SHIFT 键(位 0 )、CTRLL 键(位 1 )和 ALT 键(位 2 )。这些位分别对应于值 1、2 和 4。可通过对一些、所有或无位的设置来指明有一些、所有或零个键被按下。例如,如果 CTRL 和 ALT 这两个键都被按下,则 shift 的值为 6。


如果需要测试 shift 参数,可使用该参数中定义各位的 shift 常数。该常数有下列值:

常数 值 描述
vbShiftMask 1 SHIFT 键的位屏蔽。
VbCtrlMask 2 CTRL 键的位屏蔽。
VbAltMask 4 ALT 键的位屏蔽。
zhuhuofong 2007-05-29
  • 打赏
  • 举报
回复
兄弟呀!怎么给分呀!想给分都不行。提示分数总和不对。
fankun 2007-05-29
  • 打赏
  • 举报
回复
楼上的只在进程内有效,如果想全局监测,还是听2楼老大的
rainstormmaster 2007-05-28
  • 打赏
  • 举报
回复
可以用GetAsyncKeyState

也可以处理相应的事件

还可以写键盘钩子

问题是,你的问题描述的不确切

7,762

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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