Function 自动热键(AHK)如何在销毁GUI之前等待命令完成

Function 自动热键(AHK)如何在销毁GUI之前等待命令完成,function,send,autohotkey,Function,Send,Autohotkey,当前,当我按1时,Gui在可以键入变量之前关闭。我怎样才能让它足够快地输入而不必担心,或者让它在关闭之前等待它完成?快速而肮脏的版本是在假设有足够时间的情况下睡眠一秒钟 Gui, Add, Button, w%buttonWidth% r%buttonHeight% gbutton1, &1. %var1% button1: WinActivate [title] send %var1% Gui Destroy return 另外,如果要在刚刚激活的窗口中键入, 您必须等到它处于活动状

当前,当我按1时,Gui在可以键入变量之前关闭。我怎样才能让它足够快地输入而不必担心,或者让它在关闭之前等待它完成?

快速而肮脏的版本是在假设有足够时间的情况下睡眠一秒钟

Gui, Add, Button, w%buttonWidth% r%buttonHeight% gbutton1, &1. %var1%
button1:
WinActivate [title]
send %var1%
Gui Destroy
return
另外,如果要在刚刚激活的窗口中键入, 您必须等到它处于活动状态。 试一试

正确的方法是检查接收变量的窗口是否已获取该变量。
你的问题没有提供足够的细节来建议一个好的方法。

快速和肮脏的版本是假设有足够的时间睡觉一秒钟

Gui, Add, Button, w%buttonWidth% r%buttonHeight% gbutton1, &1. %var1%
button1:
WinActivate [title]
send %var1%
Gui Destroy
return
另外,如果要在刚刚激活的窗口中键入, 您必须等到它处于活动状态。 试一试

正确的方法是检查接收变量的窗口是否已获取该变量。
你的问题没有提供足够的细节来建议一个好的方法。

没错。如果目标窗口公开其内容可以读取的控件,则可以实现一个小的等待循环。另一种方法是通过剪贴板发送并粘贴。我不喜欢,但你不必担心要等多久。无论如何,
SendMode,Input
如果还没有使用的话,可能会有所改进。我认为您的问题在于您定义了一个GUI,然后在没有返回关闭该部分的情况下,继续按按钮1。在GUI后添加一个回车符,用按钮1分隔下一部分。@robert上面的代码只是整个代码的一部分-例如,它没有
GUI Show
命令,因此它自己甚至不会显示GUI…您(576i)就在那里。。。但无论如何,应该没有理由关闭GUI,除非您点击GUI销毁、GUI关闭或退出按钮……我在
Send
SendInput
SendRaw
之间切换,运气不错。当前使用
Send
,为SharePoint DesignerExactly获得最佳结果。如果目标窗口公开其内容可以读取的控件,则可以实现一个小的等待循环。另一种方法是通过剪贴板发送并粘贴。我不喜欢,但你不必担心要等多久。无论如何,
SendMode,Input
如果还没有使用的话,可能会有所改进。我认为您的问题在于您定义了一个GUI,然后在没有返回关闭该部分的情况下,继续按按钮1。在GUI后添加一个回车符,用按钮1分隔下一部分。@robert上面的代码只是整个代码的一部分-例如,它没有
GUI Show
命令,因此它自己甚至不会显示GUI…您(576i)就在那里。。。但无论如何,应该没有理由关闭GUI,除非您点击GUI销毁、GUI关闭或退出按钮……我在
Send
SendInput
SendRaw
之间切换,运气不错。对于SharePoint Designer,当前使用
Send
获得最佳结果
WinActivate [title]
WinWaitActive, [title]