Apple скрипт для вывода панели системных настроек на передний план - PullRequest
0 голосов
/ 30 октября 2018

Я пытаюсь перейти к панели безопасности в системных настройках, используя приведенный ниже сценарий, если панель уже открыта и свернута, сценарий не может вывести ее на передний план. Есть ли способ наряду с активацией, я могу вывести его на фронт

tell application "System Preferences"
     activate
     set current pane to pane "com.apple.preference.security"
end tell

Ответы [ 2 ]

0 голосов
/ 30 октября 2018

Я просто выйду из системы Системные настройки и снова активирую ее:

tell application "System Preferences"
    quit
    activate
    set current pane to pane "com.apple.preference.security"
end tell

Примечание: Иногда выход из системы и немедленная активация приложения могут завершиться сбоем, поскольку два процесса перекрываются, что приводит к ошибке. Если это произойдет, следующие дополнительные несколько строк (добавленные в контексте исходного ответа) должны смягчить это обстоятельство:

tell application "System Preferences"
    quit

    repeat while it is running
        delay 0.2
    end repeat

    activate
    set current pane to pane "com.apple.preference.security"
end tell
0 голосов
/ 30 октября 2018

Этот скрипт проверяет состояние окна.

  • Если окно не существует, откройте его.
  • Если окно существует, но миниатюрно, сделайте его видимым.
  • Если окно видно, ничего не делать.

    tell application "System Preferences"
        activate
        if exists window "Security & Privacy" then
            tell window "Security & Privacy" to if it is miniaturized then set miniaturized to false
        else
            set current pane to pane "com.apple.preference.security"
        end if
    end tell
    
...