Puoi controllare i componenti dell'interfaccia dell'interfaccia utente dell'applicazione che stai tentando di scrivere con il comando "Elementi dell'interfaccia utente"
tell application "System Events"
tell application process "System Preferences"
get the UI elements of the window "Keyboard"
end tell
end tell
puoi quindi eseguire il drill down dell'elenco per trovare dove è l'elemento richiesto
tell application "System Events"
tell application process "System Preferences"
get the UI elements of tab group 1 of window "Keyboard"
end tell
end tell
che attualmente utilizza App Inspector di Accessibilità (parte di Xcode) può aiutarti a identificare quale elemento da ispezionare
Per i nostri scopi, sembra che il popup a cui siamo interessati sia il
pulsante pop-up 2 del gruppo di schede 1 della finestra "Tastiera"
Poiché è un pop-up, per interagire con il suo menu, devi fare clic su di esso e quindi selezionare l'elemento che desideri attivare. Può essere fatto specificando l'intera etichetta della voce di menu su cui fare clic, ho preferito simulare le sequenze di tasti necessarie per cambiare la selezione (sia la freccia su o giù e poi il ritorno) ...
tell application "System Preferences"
-- activate
reveal anchor "keyboardTab" of pane id "com.apple.preference.keyboard"
end tell
delay 0.5 -- this depends on how fast is your mac
tell application "System Events"
tell application process "System Preferences"
set thePopup to pop up button 2 of tab group 1 of window "Keyboard"
tell thePopup
click
delay 0.2
if the value of thePopup begins with "App" or the value of thePopup begins with "Expanded" then
key code {125, 125, 125, 36}
else
key code {126, 36}
end if
end tell
end tell
end tell
quit application "System Preferences"
a proposito, in un'altra domanda qualcuno ha notato che se non attivi activate l'app Preferenze di sistema, gli script funzioneranno ancora ma senza mostrare la sua finestra (vedrai comunque il menu popup essendo commutato, però)