Autohotkey 按住按钮时暂时暂停自动点火循环

Autohotkey 按住按钮时暂时暂停自动点火循环,autohotkey,Autohotkey,我写了一个脚本,可以发送autofire左键点击,并且可以打开和关闭。剧本很好用。但是,问题是,按住鼠标右键不再正常工作,因为左键单击会一直被发送。因此,我想更改脚本,使其在按住鼠标右键时暂时暂停 我该怎么做呢?这是我目前的代码: #MaxThreadsPerHotkey 3 #z:: #MaxThreadsPerHotkey 1 if keep_winz_running = y { keep_winz_running = n return } ; Oth

我写了一个脚本,可以发送autofire左键点击,并且可以打开和关闭。剧本很好用。但是,问题是,按住鼠标右键不再正常工作,因为左键单击会一直被发送。因此,我想更改脚本,使其在按住鼠标右键时暂时暂停

我该怎么做呢?这是我目前的代码:

#MaxThreadsPerHotkey 3
   #z::
#MaxThreadsPerHotkey 1

if keep_winz_running = y

{
     keep_winz_running = n
     return
    }

; Otherwise:

keep_winz_running = y

Loop
{
GetKeyState, rbut, Rbutton
If rbut, = U 
{ 
Loop, 

{ 

    MouseClick, left 

    Sleep, 50 ;This means the script will wait 1.5 secs 

     if keep_winz_running = n  ; The user signaled the loop to stop.

        break  ; break out of the loop

}
计时器是最好的

sendToggle := false

#z::
    if(!sendToggle) {
        sendToggle := true
        SetTimer, SendClick, 100
    } else {
        sendToggle := false
        SetTimer, SendClick, Off
    }
return

#If sendToggle
RButton::
    SetTimer, SendClick, Off
    KeyWait, RButton
    SetTimer, SendClick, 100
return

SendClick:
    Click
return

我发现50毫秒的发送间隔非常快,特别是如果不减少
SetBatchLines
SetKeyDelay
的话,就无法达到50毫秒。如果真的需要那么快,考虑改变它们。

你是否尝试用<代码> <代码> > GETKEYSTATE、RATE、Rbutton < /代码> >如果RAT,=D < /C> >代码>破解< /代码>某处?谢谢!计时器似乎是更好的选择。脚本几乎成功了,我只需添加单击事件,使鼠标右键的Rbutton映射保持一致。@CGN您能详细说明一下吗?请在pastebin上发布您的最终代码,我很好奇您到底需要调整什么。当然。不过要澄清一下:初始脚本发送一次右键单击,但它不允许我发送连续的右键单击。我想我在最初的帖子中没有明确指出这是必要的。