Applescript中的总菜鸟,请耐心等待......
我们有一个过程,我们使用系统事件来控制Acrobat X中的“打印”对话框。我们可以“点击”打印按钮。
现在,我们必须等到文档打印完毕。打印文档时,会打开一个对话框,标题为“打印”,进度条和取消按钮。我们只能在此窗口关闭时继续。
到目前为止,我还没有成功等待; Applescript继续,这会弄乱这个过程。
我目前所拥有的(注意这是一个更大的脚本的一部分,并且变量已定义并且看起来是有效的。
我们已激活Acrobat,并且“打印”对话框已打开:
tell application "System Events"
tell process "Acrobat"
-- now we set all the options in the Print dialog,
-- which is in the window Print
click button "OK" of window "Print
end tell
end tell
delay 5
-- this gives Acrobat time to get printing and to open that print dialog window
repeat while exists window "Print"
delay 1
end repeat
close active doc saving no
我也尝试将该代码放入超时,但没有机会。
现在,我被卡住了,但我确信这是一个愚蠢的初学者错误。
另一个注意事项:我无法使用UIElementInspector获取此“打印”窗口的名称。
提前感谢任何建议。
答案 0 :(得分:2)
您的代码是否包含在您未在此处报告的某个tell application
块中?
如果将重复循环移动到tell process
块中,它应该可以工作:
tell application "System Events"
tell process "Acrobat"
-- now we set all the options in the Print dialog,
-- which is in the window Print
click button "OK" of window "Print"
delay 5
-- this gives Acrobat time to get printing and to open that print dialog window
repeat while exists window "Print"
delay 1
end repeat
end tell
end tell
close active doc saving no