Win32api:按住键

时间:2018-03-14 15:03:17

标签: python python-3.x pywin32

我正在寻找一种方法来按一个键并保持一段特定的时间。我试过了:

# Method 1
shell = win32com.client.Dispatch("WScript.Shell")
shell.SendKeys

# Method 2
win32api.SendMessage

# Method 3
win32api.keybd_event

所有这些方法,似乎只按一次键。我需要按住键。

我查看了这些资源:python simulate keydown (SO)win32api.keybd_eventpress-and-hold-with-pywin32 (SO)simulate-a-hold-keydown-event-using-pywin32 (SO)Vitual keystroke (Github)

1 个答案:

答案 0 :(得分:0)

如果你可以使用PyAutoGUI,那就可以了:

import pyautogui
import time

def hold_key(key, hold_time):
    start = time.time()
    while time.time() - start < hold_time:
        pyautogui.keyDown(key)

hold_key('a', 5)

它将保持&#39; a&#39;按键5秒钟。