易语言输入设备写的空格按下连发空格键松开关闭,但触发其他键就停止了怎么办?
空格按下连发空格键 ,空格放开停止连发空格键。但是空格按下连发空格键时触碰其他键就停止了!不晓得是不是空格键相同冲突了还是咋回事~~~!
我想,在空格按下时 连发空格键,触碰其他键也不停止,空格放开停止连发空格键)
这是源代码:
版本 2
.支持库 EdirectX
.支持库 eAPI
.程序集 窗口程序集_启动窗口
.子程序 __启动窗口_创建完毕
输入设备1.初始化 (0)
输入设备1.置刷新时间 (1)
输入设备1.选择输入设备 (假, 真, 假)
.子程序 _输入设备1_键盘按键状态被改变
.参数 键值, 整数型
.参数 键状态, 整数型
.判断开始 (键值 = #空格键 且 键状态 = 2)
时钟2.时钟周期 = 10
.判断 (键值 = #空格键 且 键状态 < 2)
时钟2.时钟周期 = 0
.默认
.判断结束
.子程序 _时钟2_周期事件
模拟按键 (#空格键, , )
版本 2
.支持库 EdirectX
.支持库 eAPI
.程序集 窗口程序集_启动窗口
.子程序 __启动窗口_创建完毕
输入设备1.初始化 (0)
输入设备1.置刷新时间 (1)
输入设备1.选择输入设备 (假, 真, 假)
.子程序 _输入设备1_键盘按键状态被改变
.参数 键值, 整数型
.参数 键状态, 整数型
.判断开始 (键值 = #空格键 且 键状态 = 2)
时钟2.时钟周期 = 10
.判断 (键值 = #空格键 且 键状态 < 2)
时钟2.时钟周期 = 0
.默认
.判断结束
.子程序 _时钟2_周期事件
模拟按键 (#空格键, , )
用键盘钩子
源码下载↓
如果问题解决请选择最佳答案 将帖子改为已解决
.版本 2
.支持库 spec
.支持库 eAPI
.程序集 窗口程序集_启动窗口
.程序集变量 键盘钩子, 整数型
.子程序 __启动窗口_创建完毕
键盘钩子 = SetWindowsHookEx (13, &键盘钩子回调函数, GetModuleHandle (0), 0)
.子程序 键盘钩子回调函数, 整数型
.参数 参数一, 整数型
.参数 参数二, 整数型, , 状态,256按下,257弹起
.参数 参数三, 整数型, , 键值的指针
.局部变量 键值, 整数型
.局部变量 A, 文本型
键值 = 取字节集数据 (指针到字节集 (参数三, 1), #整数型, )
.如果 (参数二 = 256)
A = “按下”
.否则
A = “弹起”
.如果结束
.如果真 (键值 = #空格键 且 A = “按下”)
时钟1.时钟周期 = 10
.如果真结束
.如果真 (键值 = #空格键 且 A = “弹起”)
时钟1.时钟周期 = 0
.如果真结束
调试输出 (键值, “状态: ” + A)
返回 (CallNextHookEx (键盘钩子, 参数一, 参数二, 参数三))
.子程序 _时钟1_周期事件
模拟按键 (#空格键, , )
.版本 2
.DLL命令 GetModuleHandle, 整数型, , "GetModuleHandleA", , 获取句柄
.参数 lpModuleName, 整数型
.DLL命令 CallNextHookEx, 整数型, , "CallNextHookEx", , 下一个钩子
.参数 hhk, 整数型
.参数 nCode, 整数型
.参数 wParam, 整数型
.参数 lParam, 整数型
.DLL命令 SetWindowsHookEx, 整数型, , "SetWindowsHookExA", , 创建钩子
.参数 idHook, 整数型
.参数 lpfn, 子程序指针
.参数 hmod, 整数型
.参数 dwThreadId, 整数型
.DLL命令 UnHookWindowsHookEx, 逻辑型, , "UnhookWindowsHookEx", , 卸载钩子
.参数 hhk, 整数型
悬念 发表于 2017-10-18 10:05
用键盘钩子
源码下载↓
啥也不说了,采纳随然我没测试,但我相信你出面帮忙解决的问题一定是对的,多谢{:smile:}
页:
[1]