Automation 导航控件(列表框)时间延迟

Automation 导航控件(列表框)时间延迟,automation,delay,autohotkey,timedelay,Automation,Delay,Autohotkey,Timedelay,在制作自动热键脚本时,我遇到了以下问题。我需要导航列表框(一个位置到较低的方向)。如果当前选定的行是可见列表框区域的底行,则导航所需的时间将比选择位于最后一行上方的时间长。对这种行为有一个说明。(编辑:据我所知,重新绘制列表框需要额外的时间) 以下脚本不适用于选定的底线 Send, {tab} ; Set focus to ListBox Send, {down} ; Navigate Listbox Send, {enter} ; Submit selection 所以,我可以在第二行

在制作自动热键脚本时,我遇到了以下问题。我需要导航列表框(一个位置到较低的方向)。如果当前选定的行是可见列表框区域的底行,则导航所需的时间将比选择位于最后一行上方的时间长。对这种行为有一个说明。(编辑:据我所知,重新绘制列表框需要额外的时间)

以下脚本不适用于选定的底线

Send, {tab}   ; Set focus to ListBox
Send, {down}  ; Navigate Listbox
Send, {enter} ; Submit selection

所以,我可以在第二行后面插入
Sleep,200
。然而,也许还有更优雅的解决方案。如果存在这样的解决方案,请向我描述。

我无法重现您所说的行为

如果添加一个Sleep命令可以使事情正常工作,那么它就没有任何不雅之处。
在各种应用程序中,使用Send命令使事情顺利进行时,通常需要睡眠。这是因为Send命令有时发送人工击键的速度比应用程序设计处理的速度快。我需要编写如下脚本:

Send, {x down}
Sleep, 50
Send, {x up}
使其在多个应用程序中工作,以模拟印刷持续时间。
当然有
SetKeyDelay
,但是你没有那么好的控制能力

另一个选项是使用
GuiControl
选择内容。
下面是一个粗略的例子:

Gui, Add, DropDownList, vColorChoice, Black|White|Red|Green|Blue
Gui, Add, ListBox, vChoice Choose1 AltSubmit h120, Red|Green|Blue|Black|White
Gui, Show, h156

loop 4
{
Gui, Submit, nohide
sleep, 1000
GuiControl, Choose, Choice, % Choice + 1
Send, {enter}{tab}
} Return
这是一个演示,不是一个实用的脚本。 要选择特定的内容,它将如下所示:

GuiControl, Choose, Choice, 3

你还没问过问题(没有以?)结尾的句子。@HonestAbe:我不是以英语为母语的人。我解释清楚我的问题了吗?