Applescript Fare clic su "Vai" e "Apri" - finestra di dialogo all'interno dell'applicazione

2

In PCSX, (emulatore ps1), sto cercando di automatizzare i passaggi per riprodurre un ISO. Quindi, sto facendo questo:

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

L'esecuzione da AppleScript Editor non funzionerà. L'ho fatto funzionare funzionando dall'App che crea. PCSX e img.bin si trovano all'interno del pacchetto generato.

dopo aver premuto il comando + i, si apre una finestra di dialogo "Vai alla cartella" e ho bisogno di fare clic su Vai e quindi su Apri

Ma facendo così, non troverà la finestra di dialogo. Cosa sto facendo di sbagliato?

    
posta ghaschel 14.01.2013 - 11:31
fonte

2 risposte

2

Invece di 'tell process PCSX', probabilmente sarà qualcosa di più simile a:

tell application process "PCSX"
    click button "Go" of window "Open"
end

Ma con lo scripting GUI, è difficile sapere con certezza. Vorrei suggerire prima di tutto come fare correttamente riferimento alla finestra di dialogo Apri provando uno dei frammenti seguenti. Tieni presente che ti consigliamo di eseguire i frammenti di seguito mentre la finestra è aperta.

tell application process "PCSX"
   properties of (every window)
end

o

tell application process "PCSX"
    entire contents
end

Da lì, ottieni informazioni sul pulsante che vuoi cliccare, usando di nuovo l'intero comando contenuto.

tell application process "PCSX"
    tell window _____
        entire contents
    end
end

Noioso, no? C'è anche qualcosa chiamato UIElementInspector che è un'utilità klunky di Apple che aiuta a distinguere i nomi degli elementi dell'interfaccia. Molto meglio è l'eccellente Browser UI link di PFiddlesoft (che nome).

    
risposta data 15.01.2013 - 21:37
fonte
2

Prova in questo modo:

activate application "TextEdit"
tell application "System Events"
    keystroke "o" using command down
    keystroke "g" using {shift down, command down}
    tell window 1 of process "TextEdit"
        set value of text field 1 of sheet 1 to "/usr/share/dict/connectives"
        click button 1 of sheet 1
        click button "Open"
    end tell
end tell
    
risposta data 29.09.2013 - 12:17
fonte

Leggi altre domande sui tag