Applescript проверяет, является ли окно одним экраном - PullRequest
0 голосов
/ 22 ноября 2011

Я написал эту функцию скрипта

on GetWindowLocation()
    set front_app to (path to frontmost application as Unicode text)
    tell application front_app
        item 1 of (get bounds of front window)
    end tell
end GetWindowLocation

on GetDockStatus()
    tell application "System Events" to get the autohide of the dock preferences
end GetDockStatus

, если я нахожусь на рабочем столе без каких-либо ошибок.Как я могу проверить, есть ли окно на экране, чтобы я мог поставить оператор if, чтобы он не запускался, если окно не на экране.

1 Ответ

1 голос
/ 22 ноября 2011

Вероятно, самое простое решение - просто перехватить ошибку:

tell application front_app
    try
        return item 1 of (get bounds of front window)
    on error
        -- do something here to handle there being no front window
    end try
end tell

Вы также можете попробовать проверить count of windows, прежде чем ссылаться на front window, но это несколько более подвержено ошибкам (поскольку окно может исчезнуть, прежде чем вы захватите его границы).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...