繁体   English   中英

LButton启动时如何停止AHK循环

[英]How do i stop AHK loop when LButton is up

我只希望该循环在LButton按下时起作用,而在LButton按下时停止。I代码在LButton按下时起作用,但是当我将手指从左键单击移开时,它继续起作用。

 mem:=0
~*LButton:: 
Sleep, 100
KeyWait, LButton, T0.10
If ErrorLevel = 1
   {
   While GetKeyState("LButton","P")

Loop {
GetKeyState, state, LButton, P
    If state = U
        Break

 MouseGetPos, xpos, ypos

 if (xpos > mem)          ;moved right
    {
     send, {a down}         ;send key
     mem:=xpos
    }
 else
     send, {a up}

 if (xpos < mem)          ;moved left
    {
     send, {d down}
     mem:=xpos
    }
 else
     send, {d up}

  Sleep, 100
}
}
return

您的情况与while循环的用法示例非常相似。 如果您看到的是您可以看到的内容,则一会儿不需要循环。 刚有

while GetKeyState("LButton")
{
    ; Your code here:
    MouseGetPos, xpos, ypos

    if (xpos > mem)          ;moved right
    {
        send, {a down}         ;send key
        mem:=xpos
    }
    else{
        send, {a up}
    }

    if (xpos < mem)          ;moved left
    {
        send, {d down}
        mem:=xpos
    }
    else{
        send, {d up}
    }

    Sleep, 100
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM