吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1657|回复: 6
收起左侧

[求助] python win32api.keybd_event 模拟键盘按键的问题

[复制链接]
Glenn 发表于 2021-8-10 10:20
有没有方法在 win32api.keybd_event  模拟键盘按键时,使键盘的输入信号断开呢,因为我在使用的时候遇到一个问题:在模拟按下F1的时候,我键盘如果按着Ctrl,他就会发出Ctrl + F1 的信号,而不是F1

免费评分

参与人数 1吾爱币 +1 热心值 +1 收起 理由
wuaiwu77 + 1 + 1 热心回复!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

无闻无问 发表于 2021-8-10 10:57
第3个参数,设为KEYEVENTF_KEYUP松开按键
春天的萌动 发表于 2021-8-10 12:00
cmy2019 发表于 2021-8-10 14:14
看你的描述不会是想强制关闭实体键盘的输入功能吧?这样可太暴力了,绝对不是好的选择。
我觉得可以在模拟按键之前加个判断,如果当前有按下的键,弹窗提示用户释放所有按键,然后再执行你的按键模拟代码。
 楼主| Glenn 发表于 2021-8-10 14:54
cmy2019 发表于 2021-8-10 14:14
看你的描述不会是想强制关闭实体键盘的输入功能吧?这样可太暴力了,绝对不是好的选择。
我觉得可以在模拟 ...

如何才能检测当前是否有按键按下呢?
 楼主| Glenn 发表于 2021-8-10 15:20
本帖最后由 Glenn 于 2021-8-10 15:22 编辑

我目前遇到的困难是这样的:我使用ctypes.windll.user32  模块注册快捷键,当我想变更快捷键的时候需要先释放快捷键,但是要想释放快捷键必须先结束他的快捷键监听状态  user32.GetMessageA(ctypes.byref(msg), None, 0, 0)   这句代码使程序进入热键监听状态,必须要触发之前注册过的快捷键(我目前只知道这种方法)才能让他继续往下执行,通过判断释放快捷键的占用,所以我目前使用的方法是用  win32api 模块模拟键盘按键去触发快捷键跳出释放快捷键后重新注册新的。但是有些问题,比如注册的是F1,想改成Ctrl + 1 ,她在模拟的触发F1的时候我可能还按着Ctrl,导致他模拟了Ctrl + F1 并不能触发监听,所以有没有啥方法,直接结束监听或者模拟不受键盘影响的键盘信号呢?
j542936 发表于 2021-8-11 13:03
本帖最后由 j542936 于 2021-8-11 13:13 编辑

是不是还是研究那个端游的
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-25 23:15

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

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