はじめに
今回は、指定したアプリを起動して、アプリ固有のメニューを選択する方法
コード
流れとしては、二つ。指定したアプリ(テキストエディット)を立ち上げてactivateし、ファイルメニューから新規を選択して新規文書を作成する、方法。
tell application "TextEdit"
activate
end tell
tell application "System Events"
tell process "TextEdit"
click menu bar 1's menu bar item "ファイル"
click menu bar 1's menu bar item "ファイル"'s menu 1's menu item "新規"
end tell
end tell
説明
tell application "TextEdit"
activate
end tell
最初にアプリを立ち上げるため、tell application でアプリを指定する。ちなみに、日本語名でも基本立ち上がる。日本語名で見つからない場合は、application一覧のダイアログが出てくるのでそこから選択するといい。activate はしなくてもこの場合問題ないが、入れておいたほうが無難
tell application "System Events"
tell process "TextEdit"
click menu bar 1's menu bar item "ファイル"
click menu bar 1's menu bar item "ファイル"'s menu 1's menu item "新規"
end tell
end tell
次にファイルメニューから新規を選択して新規書類を作成する。クリックイベントを二回いれて、最初のクリックでファイルメニューを表示し、次の動作でリストから新規をクリックしている。
「AppleScriptでシステムの上部メニューを選択する」でも言及しているが、文字列で指定せず、数字でも指定することができる。この場合、click menu bar 1's menu bar item 3 と指定すると同様の動作になる。なお、menu bar item が 1はボタン、2はアプリ名ボタンをクリックすることができる。
文字列で指定しないと、順番などが変わるとスクリプトが動作しなくなることがあるので文字列指定している、無論、メニューの名前が変更されてしまったら動かないけれども。