/ / AppleScript o Automator per fare clic sui menu in un'applicazione? - macos, applescript, automator, excel-2008

AppleScript o Automator per fare clic sui menu in un'applicazione? - macos, applescript, automator, excel-2008

Non sono sicuro che sia possibile farlo tramite AppleScript e / o Automator ... ma mi piacerebbe essere in grado di:

a) lanciare un'applicazione (so che questo può essere fatto abbastanza facilmente da AppleScript o Automator)

b) una volta avviata l'applicazione, utilizzare AppleScript o Automator per selezionare voci di menu specifiche.

per esempio. Mi piacerebbe lanciare Excel 2008 (ho l'edizione casa / studente che non viene preconfigurata per Automator) e quindi fare clic sul menu "File" e fare clic su "Apri".

Qualsiasi indicazione su dove andare / cercare come selezionare voci di menu come questa (o se è addirittura possibile)?

Si può "fare" con la funzione di registrazione di Automator, ma Record è molto fragile.

Preferisco essere in grado di utilizzare AppleScript semplicemente per prendere un "array" che contiene ogni voce di menu per l'applicazione e quindi fare clic programmaticamente sulla voce 0 del menu nel mio array ... ecc. Ecc.

È possibile?

TIA

risposte:

-1 per risposta № 1

Non so come prendere un array, ma sembra che potrebbe funzionare per l'invio di clic del mouse, ecc:

VirtualInput


4 per risposta № 2
tell application "###"

activate

end tell


tell application "System Events"

tell process "###"

click menu item "^^^" of menu "$$$" of menu bar 1

end tell

end tell

Metti la tua domanda in ### e metti la voce del tuo menu per ^^^ e metti il ​​tuo menu (file, modifica, vista, ecc.) In $$$. La capitalizzazione conta.

Mettilo in applecript btw

ESEMPIO:

tell application "iTunes"

activate

end tell


tell application "System Events"

tell process "iTunes"

click menu item "as list" of menu "view" of menu bar 1

end tell

end tell

elimina i doppi spazi TRANNE FINE RACCONTARE E RACCONTARE L'APPLICAZIONE "EVENTI DI SISTEMA"


1 per risposta № 3

Lo scripting dell'interfaccia utente è una bestia volubile. È fragile e spesso sensibile a molte cose fuori dal tuo controllo, come finestre di dialogo inaspettate (da altre applicazioni), cambiamenti nel carattere o nella lingua del sistema, attività dell'utente. Per non parlare delle modifiche nell'interfaccia utente di un'applicazione tra le varie versioni.

È molto più robusto usare talk direttamente conapplicazione tramite la sua API di AppleScript. Questo è esattamente lo scopo di AppleScript. Puoi sempre vedere le azioni ei dati che un'applicazione può fornire tramite AppleScript tramite la voce di menu "Apri dizionario ..." in AppleScript Editor.app "s (seleziona l'applicazione che desideri script nella finestra di dialogo del file). clic del mouse su un menu, si chiama l'azione che la voce di menu si attiva direttamente tramite AppleScript.

Naturalmente non tutte le applicazioni hanno una API AppleScript completa (o addirittura nessuna). Excel, tuttavia, ha un eccellente supporto AppleScript, se questo è il tuo obiettivo.

Se stai davvero provando a eseguire test dell'interfaccia utente, ti consiglio di iniziare con altre opzioni:

  1. Prova il modello (analogo allo script del modello dell'app tramite AppleScript). Infatti, se includi un'API di AppleScript nella tua app, puoi anche eseguire il test automatico di tale API.
  2. Uso Google Toolbox per Mac "s aggiunte di prova dell'unità (o roll your own) per inviare programmaticamente eventi di mouse o tastiera alla tua app.
  3. Usa Instruments.app per registrare una sequenza UI. La registrazione degli strumenti è solida (non ho usato la funzione di registrazione di Automator), e ottieni anche tutti gli altri extra di strumenti.

0 per risposta № 4

In effetti, lo scripting dell'interfaccia utente è fragile e pignolo, ma potresti dare un'occhiata a Apple AppleScript GUI Pagina di scripting