2016-05-03 4 views
0

Я пытаюсь щелкнуть на переключателях в панели Дисплеи System Prefernces, а именно на изменение разрешения экрана. Это код, который я использую для идентификации переключателей:изменить разрешение экрана с помощью AppleScript

tell application "System Preferences" 
    activate 
    reveal anchor "displaysDisplayTab" of pane id "com.apple.preference.displays" 
end tell 
tell application "System Events" 
    tell application process "System Preferences" 
     set frontmost to true 
     get every radio button of window 0 

     --click button 1 of window 0 of application process "System Preferences" of application "System Events" 

     --click radio button "Scaled" of radio group of window "com.apple.preference.displays" 
    end tell 
end tell 

Отправленные радиокнопки отсутствуют. На основании того, что я вижу, в окне есть нулевые переключатели. Это приводит к выводу о том, что радиокнопки являются частью вспомогательного окна, а именно: «Дисплей», а не «Главное окно». Как я могу перейти к этому «подстрочному окну» и щелкнуть радиокнопками?

enter image description here

ответ

1

Кнопки радио являются частью radio group. Радиогруппа является частью tab group.

Вот сценарий:

tell application "System Preferences" 
    activate 
    reveal anchor "displaysDisplayTab" of pane id "com.apple.preference.displays" 
end tell 
tell application "System Events" 
    tell application process "System Preferences" 
     set frontmost to true 
     tell tab group 1 of window 1 
      click radio button 2 of radio group 1 -- "Scaled" 
      select row 2 of table 1 of scroll area 1 -- select the second row in the table to change the resolution of the monitor 
     end tell 
    end tell 
end tell 
+0

I отлажены «выберите строку 2 ...» часть, чтобы она работала, в противном случае это здорово! – sanjihan

 Смежные вопросы

  • Нет связанных вопросов^_^