AppleScript -> Активировать окно приложения без сценариев - PullRequest
2 голосов
/ 07 сентября 2010

Я открыл 2 «Finder» окна A & B, A находится спереди, в то время как B снизу, следующий фрагмент выводит B впереди вверх:

tell application "Finder"
    activate
    activate window 2
end tell

Но для приложений, которые не поддерживают сценарии, только что упомянутый код не поможет.

Любые идеи для активации окна не скриптового приложения.

1 Ответ

5 голосов
/ 07 сентября 2010

В этих случаях обычно можно обратиться к системным событиям.Системные события знают о окнах запущенных процессов, и вы обычно можете манипулировать этими окнами.Нечто подобное покажет вам некоторые вещи, которые вы можете сделать.Просто поиграйте с кодом и посмотрите, сможете ли вы сделать то, что вы хотите.

tell application "System Events"
    tell process "Whatever"
        properties of windows
    end tell
end tell

РЕДАКТИРОВАТЬ: Одним из свойств окна является его "заголовок".Таким образом, вы могли бы использовать это.В этом подходе используется тот факт, что во многих приложениях есть меню «Окно», и в этом меню много раз указывается имя окон, и вы можете переключать окна, щелкая соответствующий пункт меню.Так что-то вроде этого может работать ... мой пример использует TextEdit.

tell application "TextEdit" to activate
tell application "System Events"
    tell process "TextEdit"
        set windowTitle to title of window 2
        click menu item windowTitle of menu 1 of menu bar item "Window" of menu bar 1
    end tell
end tell
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...