找回密码
 加入
搜索
查看: 3870|回复: 6

[效率算法] 如何暂时关闭快捷键

  [复制链接]
发表于 2010-4-10 10:38:17 | 显示全部楼层 |阅读模式
我在写一个类似游戏外挂的东西的时候,用了HotKeySet设定1到0这些数字为快捷键,可是这样的话,当用户暂停游戏切换出来聊天的时候,快捷键仍然起作用,导致用户打不了数字,就算在右下角暂停脚本也是一样,我会判断窗口但是不会暂停快捷键,请问如何做到这点呢?谢谢!
发表于 2010-4-10 10:43:17 | 显示全部楼层
HotKeySet("{1}")
HotKeySet("{2}")
...
HotKeySet("{0}")

评分

参与人数 1金钱 +10 收起 理由
afan + 10

查看全部评分

 楼主| 发表于 2010-4-10 13:59:55 | 显示全部楼层
谢谢楼上的,我只是想暂停,不想撤销,除非撤销是唯一的办法吧。毕竟快捷键有十多个呢,切换一次窗口就要设置一遍觉得有点不合理,有没有一个总的开关,或者把快捷键设置放在某块代码里面,能实现直接开关的功能呢?
发表于 2010-4-10 14:35:08 | 显示全部楼层
        If WinActive('游戏窗口') Then
                ;热键匹配的任务
        Else
                HotKeySet('键')
        EndIf
 楼主| 发表于 2010-4-18 03:28:20 | 显示全部楼层
谢了,看来只能这样了。
发表于 2010-4-18 03:51:50 | 显示全部楼层
注册WM_ACTIVATE消息,当窗口失去焦点时wParam参数为0,反之为1,lParam参数为窗口句柄。
注册消息的好处在于,这样做可以节约资源提高效率,不必循环检测窗口是否处于激活状态。
 楼主| 发表于 2010-5-22 20:02:50 | 显示全部楼层
不好意思,6L的没看懂,消息我只知道$GUI_EVENT_CLOSE之类的,还是自己的窗口,帮助和论坛上也找不到什么可以参考的东西,能不能提供具体点的资料位置,或者可以参考的代码,谢谢!
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-5-15 19:37 , Processed in 0.083445 second(s), 27 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表