使用AutoHotKey进行自动化的新知识,并对脚本中的循环有疑问。
我想做的是遍历应用程序中的文件树,向下按直到找到所需的文件夹,然后选择它。即使达到所需的值,我所拥有的while循环也不会停止。
我要做的是发送ctrl-c复制树中第一个文件夹的值,将其存储在变量中,然后使用while循环将其与我要查找的内容进行比较。如果匹配,则选择该目录。
; parse file tree
Send, {Down 7}
Send, {Right}
Send, {Down}
Send, ^c
ClipWait
esbToCompare := % clipboard
;MsgBox % clipboard
;MsgBox % esbContainer
esbToCompare := StrReplace(esbToCompare, "/ESB Containers/", "")
MsgBox % esbToCompare
while (esbContainer <> esbToCompare)
{
Send, {Down}
}
send {Enter}
我希望它逐个高亮显示每个目录,直到找到一个匹配项,然后选择该目录,但是循环不断进行。
答案 0 :(得分:1)
由于while循环仅包含Send, {Down}
,因此它将停留在其中,因为您要比较的变量在循环时不会改变。要解决此问题,您需要在while循环中包含用于更改比较变量(esbToCompare
和/或esbContainer
的变量的代码。