Możesz sprawdzić komponenty interfejsu interfejsu użytkownika aplikacji, którą próbujesz wykonać za pomocą polecenia „elementy interfejsu użytkownika”
tell application "System Events"
tell application process "System Preferences"
get the UI elements of the window "Keyboard"
end tell
end tell
możesz następnie przewinąć listę w celu znalezienia wymaganego elementu
tell application "System Events"
tell application process "System Preferences"
get the UI elements of tab group 1 of window "Keyboard"
end tell
end tell
faktycznie korzystanie z aplikacji Accessibility Inspector (część Xcode) może pomóc w określeniu elementu do sprawdzenia
Dla naszych celów wygląda na to, że wyskakujące okienko, którym jesteśmy zainteresowani, to przycisk wyskakujący 2 w grupie kart 1 okna „Klawiatura”
Ponieważ jest to wyskakujące okienko, aby wejść w interakcję z jego menu, musisz na niego kliknąć, a następnie wybrać element, który chcesz aktywować. Można to zrobić, określając całą etykietę pozycji menu do kliknięcia, wolałem symulować naciśnięcia klawiszy potrzebne do przełączenia wyboru (strzałka w górę lub w dół, a następnie powrót) ...
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"
nawiasem mówiąc, w innym pytaniu ktoś zauważył, że jeśli nie aktywujesz aplikacji Preferencje systemowe, skrypty będą nadal działać, ale bez pokazywania ich okna (nadal będziesz widział przełączane menu podręczne)