web-dev-qa-db-ja.com

AppleScript内からキーボードショートカットを呼び出すにはどうすればよいですか?

AppleScriptコード内からキーボードショートカットを呼び出す必要があります。 Cmd + Ctrl + Opt + E。

28
Barton

もちろん動作します。システムイベントはキーストロークを実行できます。ただし、キーストロークは常に最前面のアプリケーションに送信されるため、アプリケーションのショートカットを実行するには、まずそのアプリにアクティブ化してからショートカットを実行するように指示する必要があります。たとえば、command-tを使用してSafariで新しいタブを開くことができます。そのapplescriptは次のようになります...

tell application "Safari" to activate
tell application "System Events"
    keystroke "t" using command down
end tell

ここで、グローバルキーボードショートカットがあるとします。どのアプリケーションからでも機能するグローバルな意味。次に、最初にアプリケーションをアクティブ化する必要はありません。キーストロークを実行するだけです。リクエストしたキーを押すには、次のようにします...

tell application "System Events"
    keystroke "e" using {command down, option down, control down}
end tell
51
regulus6633

キーストロークを呼び出すか、GUIスクリプトがオンの場合は、メニューからメニュー項目を選択できます。

これを詳細に説明する素晴らしいリンクがあります。

http://hints.macworld.com/article.php?story=20060921045743404

3
Alex Zavatone

キーボードショートカットをどのようにしたいかに応じて、たとえばキーストロークイベントを使用します。

{コマンドダウン、オプションダウン、コントロールダウン}を使用して、アプリケーション「システムイベント」のキーストローク「e」を伝えるend tell

キーストロークの後の "e"を入力したい単語に置き換え、{コマンドダウン、オプションダウン、コントロールダウン}を同時にアクティブにするキーに変更します。

ありがとうございました

0
Michael Sanders