我正在尝试使用 win32api 通过特定按键来打破 Python 中的循环。人们会怎样做呢?
实际版本是什么win32api.KeyPress('H'),在下面的代码中?
Revised:
import win32api
while True :
cp = win32api.GetCursorPos()
print cp
if win32api.KeyPress('H') == True :
break
我希望能够通过按来打破循环h key.
Edit:
我正在尝试制作一个重复报告鼠标位置的程序,我需要一种退出所述程序的机制。
请参阅修改后的代码。
win32api
只是底层 Windows 低级库的接口。
请参阅GetAsyncKeyState功能 http://msdn.microsoft.com/en-us/library/ms646293%28v=vs.85%29.aspx:
确定调用该函数时某个键是按下还是按下,以及该键是否在上次调用 GetAsyncKeyState 后按下。
Syntax
SHORT WINAPI GetAsyncKeyState(
__in int vKey
);
返回值
Type: SHORT
如果该函数成功,则返回值指定自上次调用 GetAsyncKeyState 以来是否按下了该键,以及该键当前是按下还是按下。如果设置了最高有效位,则按键按下,如果设置了最低有效位,则在上次调用 GetAsyncKeyState 后按下按键。
请注意,返回值是位编码的(不是boolean
)。
到达vKey
值,应用程序可以使用虚拟键代码常量win32con
module.
例如,测试“CAPS LOCK”键:
>>> import win32api
>>> import win32con
>>> win32con.VK_CAPITAL
20
>>> win32api.GetAsyncKeyState(win32con.VK_CAPITAL)
0
>>> win32api.GetAsyncKeyState(win32con.VK_CAPITAL)
1
简单字母的虚拟键常量是 ASCII 代码,
这样测试“H”键(按键被按下)的状态将如下所示:
>>> win32api.GetAsyncKeyState(ord('H'))
1
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)