0

特定のアプリ(Skim)は、スナップショットが「アクティブ」として選択されているかどうかに関係なく、他のウィンドウの上に浮かぶスナップショットウィンドウを提供します。

    set window_name to name of front window

スナップショットウィンドウがアクティブであるかどうかに関係なく、フロントウィンドウとして識別されます。

スクリプトは、アクティブウィンドウがスナップショットウィンドウであるかどうかをどのように判断できますか?

4

1 に答える 1

0

Skimのウィンドウのプロパティはそれを取得しませんが、それは可能Accessibility Frameworks (GUI Scripting)です。

ユーザー補助フレームワークが無効になっている場合は、[ユニバーサルアクセスシステム環境設定]ペインの[支援機器へのアクセスを有効にする]チェックボックスをクリックして有効にします。

set snapshotIsActive to my checkSkimFrontWindow()

on checkSkimFrontWindow() -- this handler return true or false
    tell application "System Events"
        tell process "Skim"
            set frontmost to true
            delay 0.1
            tell window 1 to subrole is "AXDialog" and value of attribute "AXMain" is true
        end tell
    end tell
end checkSkimFrontWindow
于 2012-10-13T23:13:00.757 に答える