every UI Elementsで調べる
Mac OS X では、メニューやダイアログなどを操作することができます。
(※操作可能な状態にするには、あらかじめ アップルメニュー > システム環境設定 の「ユニバーサルアクセス」を開いて、「補助装置を使用可能にする」をオンにしておく必要があります。)
…… しかし…どういう命令を送ればよいのでしょうか?基本形は以下のような形です。
tell application "System Events"
tell process “アプリケーションの名前”
コマンド
end tell
end tell
|
では、アプリケーション Finder の 「新規ウインドウ」メニューを実行させるにはどうすればよいのでしょうか?
まずは、なにが操作可能なのか調べましょう。「every UI Elements」というコマンドを実行します。すべての UI Elements という意味ですね。
tell application "System Events"
tell process "Finder"
every UI element
end tell
end tell
|
結果ウインドウには、以下のような表示が行われます。
 |
| tell している部分より前は記述する必要はありません。menu bar 1 of application process “Finder” ってところの of application ~ は省略可能です |
どうやら、menu bar 1 というのと、scroll area “ ” というのがあるようです。
メニュー操作をしたいので、menu bar 1 というのが関係ありそうです。menu bar 1 に含まれる要素をしらべるには、tell menu bar 1 として、menu bar 1 が持っているすべての UI Elements という形になおします。
tell application "System Events"
tell process "Finder"
tell menu bar 1
every UI Elements
end tell
end tell
end tell
|
 |
| menu bar item “Apple”はアップルメニュー |
…… どうやら menu bar item “ファイル” ってのが目的のメニューみたいです。先ほどと同様に、menu bar item “ファイル” に含まれるメニューを調べましょう。
…… すると「menu “ファイル”」というのが出てきますので、さらに繰り返していくと、目的のメニューが出てくるところまでたどりつきます。
tell application "System Events"
tell process "Finder"
tell menu bar 1
tell menu bar item "ファイル"
tell menu "ファイル"
every UI element
end tell
end tell
end tell
end tell
end tell
|
 |
| どんどんなじみの文字が出てきます |
あとは、every UI Elements の行を削除して、pick menu item “新規 Finder ウインドウ”と記述するだけです。「pick」というコマンドについては、System Events の用語説明に載っていませんが、メニューを実行するコマンドです。
tell application "System Events"
tell process "Finder"
tell menu bar 1
tell menu bar item "ファイル"
tell menu "ファイル"
pick menu item "新規 Finder ウインドウ"
end tell
end tell
end tell
end tell
end tell
|
Finder に切り替えると、新しいウインドウができてますね。
ここまでは、メニュー操作の紹介でしたが、ほかにもダイアログ上のボタンなどでも、同じような感じで、階層をたどっていけば、目的の機能にたどり着きます。
たどり着いたら、「pick」や「click」および「keystroke」などのコマンドで操作します。
あと、注意点としては、いちおう、メニュー操作する場合は、そのアプリケーションを前面に移動した方が安全ですので、上記例では、Finder を全面に移動するコマンドを実行します。「activate」というコマンドを使います。
tell application "Finder"
activate
end tell
tell application "System Events"
tell process "Finder"
tell menu bar 1
tell menu bar item "ファイル"
tell menu "ファイル"
pick menu item "新規 Finder ウインドウ"
end tell
end tell
end tell
end tell
end tell
|
【関連情報】
・
アップル - Mac OS X
・
アップル - Mac OS X - AppleScript
・
美しいソフトウェア(from All About)
・
Excel + AppleScript(from All About)
・
AppleScript をはじめよう!(from All About)
・
続・AppleScript をはじめよう! AppleScrip...(from All About)
・
一行AppleScript(from All About)
・
GUI Scripting を楽しもう!(from All About)
・
ウインドウのサイズを制御する(from All About)
→All About「Mac OS の使い方」トップページへ
→その他の記事はこちら