AppleScript单击“对话框”

时间:2013-01-14 09:35:39

标签: macos applescript

在PCSX中,(ps1模拟器),我正在尝试自动化播放iso的步骤。所以,我这样做:

set thepath to path to me
set thesecondpath to POSIX path of thepath
set thethirdpath to "Contents/PSX/ROMS/img.bin"
set thefourthpath to "/Contents/PSX/PCSX.app"
set thefifthpath to thesecondpath & thefourthpath
set theultimatepath to thesecondpath & thethirdpath

tell application thefifthpath
    activate
    tell application "System Events"
        keystroke "i" using {command down}
        keystroke theultimatepath
        delay 1.0
        tell process "PCSX"
            click button "Go"
        end tell
        key code 53
    end tell
end tell

从AppleScript编辑器运行不起作用。我让它从它创建的App运行。 PCSX和img.bin位于Generated Package中。

command+i后,会打开"Go to the folder"对话框,我需要点击Go,然后点击Open

但是这样做,就找不到对话框了。我做错了什么?

2 个答案:

答案 0 :(得分:3)

如果Go和Open是默认按钮,请尝试:

tell application "System Events"
    keystroke return
    delay 2
    keystroke return
end tell

虽然我没有安装PCX,但这是一个如何从Finder的Go to Folder命令单击Go按钮的示例。

tell application "System Events"
    tell process "Finder"
        click button "Go" of window "Go to Folder"
    end tell
end tell

答案 1 :(得分:1)

您的脚本无法使用AppleScript编辑器的原因是“我的路径”中的“我”是运行AppleScript的应用程序。在AppleScript编辑器中运行AppleScript时,这意味着AppleScript编辑器本身。当您将AppleScript保存为脚本应用程序并运行它时,我的路径指向您的脚本应用程序,因为它正在运行自己的AppleScript。

另外,这是不正确的:

tell process "Finder"
        click button "Go" of window "Go to Folder"
end tell

“Go”按钮不在“转到文件夹”窗口中。它位于附在Finder窗口的工作表上,该窗口具有当前正在查看的任何文件夹的名称。因此,您必须将按钮描述为窗口1的第1页:

tell application "System Events"
    tell process "Finder"
        click button "Go" of sheet 1 of window 1
    end tell
end tell

...但请记住,在另一个应用中,工作表上类似的按钮可能位于窗口3的第2组的第1组的第1页上.UI脚本很复杂。