exinggg 发表于 2021-7-21 03:10

autohotkey 求助18CM大佬 想实现循环中.. 停止循环后立即结束而不会执行完整段代码

例如
~$lShift::
Loop
{
If(GetKeyState("lshift","P")=0)
break
Else
Sleep 20
send {p Down}
Sleep 100
send {p Up} 比如在此处松开lshift后 就结束 而不往下执行了 , 然后再按下lshift键又从头执行
Sleep 150
send {space}
Sleep 350
}
return


求助各位18CM大佬, 我想实现循环中..松开lshift停止循环立即结束而不执行完整段代码 感谢~~~

刘亚东 发表于 2021-7-21 03:20

抱歉,不懂这种东西,帮你顶一下,希望早日被大佬看到 。

exinggg 发表于 2021-7-21 03:37

刘亚东 发表于 2021-7-21 03:20
抱歉,不懂这种东西,帮你顶一下,希望早日被大佬看到 。

谢谢~~:lol

我也是小白, 研究了好一会儿还是不会, 只能等大佬出手了

boxer 发表于 2021-7-21 08:27

只有16CM, 不够资格回答, 帮不了你

zjia 发表于 2021-7-21 08:35

试试这样写:
GetKeyState, state, Shift
if (state = "D")
...
else
...

janny82 发表于 2021-7-21 08:51

虽然题目我不会,但我怀疑你在开车~~~~~~~~~~~~~~

JuncoJet 发表于 2021-7-21 09:28

break 改成return

zhanglei1371 发表于 2021-7-21 09:47


~$lShift::
        zhongzhi=0
        Loop
        {
                If(GetKeyState("LShift","P")=0)
                zhongzhi=1
                else
                        Sleep 20
                Send {p Down}
                if (zhongzhi=1){
                        break ;需要在哪里跳出就在哪里加这句;
                }
                Sleep 100
                Send {p Up} ;比如在此处松开LShift后 就结束 而不往下执行了 , 然后再按下LShift键又从头执行
                if (zhongzhi=1){
                        break ;需要在哪里跳出就在哪里加这句;
                }
                Sleep 150
                Send {Space}
                if (zhongzhi=1){
                        break ;需要在哪里跳出就在哪里加这句;
                }
                Sleep 350
        }
return

exinggg 发表于 2021-7-21 16:24

zjia 发表于 2021-7-21 08:35
试试这样写:
GetKeyState, state, Shift
if (state = "D")


试了一下,循环命令仍然是要执行完才跳出 ,还是谢谢你

exinggg 发表于 2021-7-21 16:25

JuncoJet 发表于 2021-7-21 09:28
break 改成return

也是不行,, 松开热键还是会把完整代码执行完   谢谢你的回复
页: [1] 2
查看完整版本: autohotkey 求助18CM大佬 想实现循环中.. 停止循环后立即结束而不会执行完整段代码