【问题标题】:PyAutoGui - Press key for X secondsPyAutoGui - 按键 X 秒
【发布时间】:2018-07-18 20:09:47
【问题描述】:

我目前正在编写一个脚本,该脚本可以按下“w,a,s,d”键来移动任何游戏中的角色。 为此,我需要按下“w”键一段特定的时间。我怎样才能做到这一点?

我想到了类似的东西:

pyautogui.keyDown('w')
time.sleep(2)
pyautogui.keyUp('w')

但这只是暂停整个程序并且没有按下任何键,所以这对我没有用。

【问题讨论】:

    标签: python input controls key pyautogui


    【解决方案1】:

    正如pyautogui.keyDown() 的文档字符串中所说:

    在不释放的情况下执行键盘按键。这将使 键处于按住状态。

    注意:出于某种原因,这似乎不会导致按键重复 如果在文本字段上按住键盘键,则会发生这种情况。


    您需要一种不同的方法 - 您可以使用 pygame - with this

    或者,如果你想继续使用pyautogui,你可以试试这样:

    def hold_W (hold_time):
        import time, pyautogui
        start = time.time()
        while time.time() - start < hold_time:
            pyautogui.press('w')
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-04-22
      • 1970-01-01
      相关资源
      最近更新 更多