虽然 .exe 正在运行,但我想监视键 'w' 's' 'a' 'd' 和 'space' 是否被长按(超过 1 秒)。
当同时按下两个键时,下面的代码无法准确工作,例如“w”第一次按下 3.3 秒,“d”第二次按下 1.5 秒“a”第三次按下 0.3 秒,而“w”仍然按下.
我希望:
import time
import keyboard
while True:
start = time.perf_counter()
a = keyboard.read_event()
if a.name == "esc":
break
elif a.event_type == "down":
b = keyboard.read_event()
if a.name == "w" or a.name == "s" or a.name == "a" or a.name == "d" or a.name == "space":
while not b.event_type == "up" and b.name == a.name:
b = keyboard.read_event()
end = time.perf_counter()
print('You pressed', a.name, 'for', end-start, 'seconds.')