如何用键盘钩子捕获连续的不同的按键

Hulk_xy 2016-04-25 01:14:55
我有个c# winform项目,设定了键盘F4,F5的快捷键,就是用来替代鼠标点击某个button操作,有先后顺序,F4调用的button点击事件里比较复杂,需要大概2s处理,我连续快速按F4,F5后,只处理了F4调用的button事件,看到好像是根本没捕捉到F5按键,或者是什么原因来不及处理?但是单独按F5,是正常的,这是为什么?请大神们指点迷津。
...全文
127 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
正怒月神 2016-04-26
  • 打赏
  • 举报
回复
之前做过一个钩子程序,其实比较常见的就是以前dota改建功能。 在vs中最好别用f5,因为那个默认是调试。如果你一定要这么设置,那么你可以单独运行exe文件看看,f5是否有效果。
为轮子而生 2016-04-25
  • 打赏
  • 举报
回复
这是因为你的button4处理程序阻塞了线程,导致这2秒内接受不到键盘消息,而钩子就是用来解析消息的。你可以把button4的过程放到多线程中去,使它不要阻塞UI线程。
为轮子而生 2016-04-25
  • 打赏
  • 举报
回复
写错了,是F4

110,536

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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