2024-07-05 15:15:18 发布
网友
只要按下我的f键,我就想做一个动作。问题是它会滥发动作
import win32api while True: f_keystate = win32api.GetAsyncKeyState(0x46) if f_keystate < 0: print("Pressed!")
我想这个没有“按下!”被垃圾邮件,但只打印一次
您需要一个状态变量来跟踪按键释放后是否被按下
f_pressed = False while not f_pressed: f_pressed = win32api.GetAsyncKeyState(0x46) < 0 print("Pressed!")
因为在while循环中,当按下f键时,GetAsyncKeyState将检测到f键始终处于按下状态。结果,print语句被重复调用
while
GetAsyncKeyState
print
尝试以下代码,您将得到想要的结果:
import win32api while True: keystate = win32api.GetAsyncKeyState(0x46)&0x0001 if keystate > 0: print('F pressed!')
您需要一个状态变量来跟踪按键释放后是否被按下
因为在
while
循环中,当按下f键时,GetAsyncKeyState
将检测到f键始终处于按下状态。结果,print
语句被重复调用尝试以下代码,您将得到想要的结果:
相关问题 更多 >
编程相关推荐