找到一种简单的方法来找到自动按住按键的方法非常困难,有人可以帮助我吗?

问题描述 投票:0回答:1

假设我想在特定持续时间内自动按住按键

h
,例如 10 秒。

我的第一个想法是

AutoHotKey
,然后我尝试了。

#Requires AutoHotkey v2.0
*s::
{
    Send "{h down}" 
    Sleep 10000
    Send "{h up}" 
}

它有效。但它轻击

h
,而不是按住它。 我查看了 AutoHotKey 论坛,没有人知道如何使其自动,最好的解决方案是按住扳机,这达不到目的。

我去了

PyAutoGUI
,尝试制定一个简单的解决方案,例如

import pyautogui
import time


pyautogui.keyDown('h')
time.sleep(10)
pyautogui.keyUp('h')

不知何故,它只点击

h
,而不是按住它。

请帮助我。

我尝试了 AutoHotKey 和 PyAutoGUI,它们只能点击按键,而不能按住它。

python automation macros autohotkey pyautogui
1个回答
0
投票

这是 AHK 的标准行为。
请参阅重复或按住某个键

要像使用真实键盘一样模拟重复按键,您必须使用循环或计时器。

#NoEnv  ; Recommended for performance and compatibility with future AutoHotkey releases.
SendMode Input  ; Recommended for new scripts due to its superior speed and reliability.
#SingleInstance force

settimer, fire, 50
settimer, fire, off

F2::
    send h
    sleep 500
    settimer, fire, on
    keywait, F2
    settimer, fire, off
return

fire:
    send h
return
© www.soinside.com 2019 - 2024. All rights reserved.