Macでホットキーを処理しようとするとたまに困るのがバッティング。基本的に、RegisterEventHotKey()
を使って登録されたホットキーが複数のアプリケーション間で重複したときはその全てのアプリケーションにイベントが送られることになってる。AとBとCの3つのアプリケーションがそれぞれF2にホットキーを割り当ててたとすると、F2キーを押したときにその3つのアプリケーションでそれぞれ処理が行われるといった具合。
ところが欲張りなあなたはホットキーイベントを他のアプリに渡したくない、独り占めしたいと思うかもしれない。そんなあなたに贈るのがkEventHotKeyExclusive
。Leopardで追加されたオプションで、これをRegisterEventHotKey()
のの第5引数として渡せばホットキーイベントを独り占めできる。
ちなみにCarbon EventsのドキュメントはTigerの時のものだからこれに関する記述はありません。もうLeopardリリースから1年半経つのに…
0 件のコメント:
コメントを投稿