就像这个问题: 自动化 GUI 任务?
我正在寻找一种自动化 GUI 任务的方法。我知道这两个应用程序是用于这类任务的,但这两个应用程序很难使用。
好的,这是我使用自动脚本编写器 II 编写的脚本尝试:
我首先打开应用程序,然后使用该应用程序打开一个文件。我相信这部分是打开文件然后双击它:
点击打开按钮
MouseClick, left, 63, 100
Sleep, 100
WinWait, Open,
IfWinNotActive, Open, , WinActivate, Open,
WinWaitActive, Open,
双击选择文件:
MouseClick, left, 144, 111
MouseClick, left, 144, 111
我需要脚本的上述部分为每次迭代选择下一个文件。
然后它在应用程序中执行以下操作:
WinWait, App Unicode,
IfWinNotActive, App Unicode, , WinActivate, App Unicode,
WinWaitActive, App Unicode,
MouseClick, left, 304, 459
Sleep, 100
MouseClick, left, 405, 467
Sleep, 100
MouseClick, left, 219, 133
Sleep, 100
然后保存:
WinWait, Save As,
IfWinNotActive, Save As, , WinActivate, Save As,
WinWaitActive, Save As,
MouseClick, left, 527, 366
Sleep, 100
应用程序打开窗口直接进入包含我所有文件的文件夹。我只需要使用 autohotkey 依次打开每个文件即可。
谢谢!
答案1
如果不知道您到底在做什么,我无法为其编写任何脚本,但假设它是一个资源管理器窗口,您可以使用循环:
Loop %RepeatCount% {
...
}
并使用一些数学知识来计算何时向下移动一行,等等。
不过,更好的办法是,查看自述文件中的“循环(文件和文件夹)”部分。看起来你应该在目录中创建 .ahk,然后执行以下操作
Loop *.fileWhatIsBoringToManipulate
{
Run p:\ath\to\executable [command line option to load file]
WinWaitActive, Manipulator
//mouseclicks and stuff
}
后者会更加优越,但是如果您的应用程序不支持命令行输入,那么您最好将文件放在列表视图中并使用发送{down}{return},而不是花哨的位置鼠标。
答案2
如果您遇到的问题是尝试选择下一个文件,也许更简单的方法是始终选择列表中的第一个文件,对其进行操作,然后将其移动到其他文件夹。然后文件夹中的第一个文件将是之前的第二个文件。
答案3
只是一个想法,但在打开对话框后,使用一些数学知识来计算要按多少次向下键或其他键来选择下一个文件(而不是使用鼠标单击)。这样至少滚动会自动排序。除了这一点和明显的命令行参数选项之外,我和 eleven81 一样,在完成文件后实际移动文件,以便下一个文件与第一个文件位于同一位置......