致电后立即:
inputbox,inv,Scan Invoice Number:
我希望将焦点从输入框转移到另一个窗口,但它不会按预期运行,并等待用户输入,然后再转到下一行代码。有没有办法覆盖这种行为?
答案 0 :(得分:1)
InputBox
使当前线程等待用户输入,从而暂停线程。在其他语言中,您可以说线程终止并且ActionListener开始侦听。通过直接在AutoHotkey中调用新线程无法主动实现多线程,但是,如documentation中所述,您可以使用热键或定时子例程启动一个。
我几次为自己想出了以下解决方案,并认为它是最干净的方式:
setTimer, continueAfterInputbox, -100 ; a negative period indicates "run once only", after a sleep of 100 ms in this case
inputbox, inv, Scan Invoice Number:
;; do things with %inv%
Return
continueAfterInputbox:
msgbox, do other cool things
return