按住鼠标按钮时AHK发送太多事件的解决方案?

时间:2017-09-12 02:03:07

标签: autohotkey

使用三种不同的方法按住鼠标左键时:

Mouseclick, left, 0, 0, 1, , D, R

Send {LButton down}

Click down

游戏我正在制作一个宏来记录我抱怨我发送了太多动作。我自己测试了这个脚本,如:

F3::
    Click down
    return

所以其他代码没有机会导致它。

我想知道是否有任何我可以使用的设置(通过设置,我的意思是CoordMode, Mouse, Screen)或任何其他解决方案可能会阻止发送AHK用来模拟按住鼠标按钮的任何快速事件。我可以尝试一下吗?我愿意测试任何想法。

1 个答案:

答案 0 :(得分:0)

嗯,你可以这样介绍Sleep

LButton::
while (GetKeyState("LButton", "P"))
{
    MouseClick, left
    Sleep, 100
}
return

虽然我个人不喜欢通过相同的鼠标点击鼠标点击行为,因为它可能导致难以摆脱的结果。

这是一个带有可切换热键的示例。

Insert::
SendInput, {LButton Down}
loop
{
    Sleep, 100
    if getkeystate("Insert", "p") ; Hold for a second as the Sleep will delay recognition.
    {
        SendInput, {LButton Up}            
        break
    }
}
return

根据评论编辑:

Insert::
SendInput, {LButton Down}
KeyWait, Insert, D
SendInput, {LButton Up}
return