微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

AutoHotKey SetTimer 立即第一次迭代

如何解决AutoHotKey SetTimer 立即第一次迭代

如果我正在使用:

SetTimer,T1,5000

T1:
    Send,{1 Down} {1 Up}
return

..它在 5 秒后运行第一次迭代。

有没有办法立即开始第一次迭代?

解决方法

不,但您可以在启动计时器之前(或之后)Gosub(docs) 到标签:

Gosub,T1
SetTimer,T1,5000

T1:
    Send,{1 Down} {1 Up}
return

或者如果你想抛弃旧的 AHK 并使用一个函数,你可以先调用这个函数:

T1()
SetTimer,5000

T1()
{
    Send,{1 Down} {1 Up}
}

或者甚至称之为内联:
SetTimer,% ("T1",T1()),5000

,

要添加到 @0x464e 的答案,您可以执行以下操作以仅在伪线程中运行一次但立即运行。

SetTimer,-1

SetTimer,-0   ; this works,but I don't recommended it as it's not documented.

您可以在此处阅读有关 AutoHotkey 线程的更多信息:
https://www.autohotkey.com/docs/misc/Threads.htm

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。