既刊書籍解決!! LaTeX2e ―仕上がりにこだわるなら、やっぱりLaTeXでしょ...(秀和システム) |
Exposéに割り当てられたショートカットキー(初期値はF9/F10/F11)はOS側で処理され、該当するキーボードイベントがアプリケーションに渡されることは無い。このようなショートカットキーを、Appleはグローバルホットキー(Global Hot Key)と呼んでいるようだ。 通常であればこの仕様は妥当なものといえるが、グローバルホットキーに対応するキーイベントそのものを受け取りたい場面も、希に存在する。例えば「システム環境設定」の「キーボードとマウス」ペイン、もちろんExpogestureもそのひとつだ。 グローバルホットキーをOSに処理させるか、無効にしてアプリケーションに渡すようにするかは、以下の非公開関数を使用して変更できる。 typedef int CGSConnection; グローバルホットキーを無効にし、アプリケーションがキーイベントを受け取れるようにするには、次のようにする。 CGSConnection conn = _CGSDefaultConnection(); CGSSetGlobalHotKeyOperatingMode(conn, CGSGlobalHotKeyDisable); 再びグローバルホットキーを有効にするには、 CGSSetGlobalHotKeyOperatingMode(conn, CGSGlobalHotKeyEnable); とする。グローバルホットキーの状態を変更した後は、確実に元に戻すこと。 当ページ内の情報の正確さは全然保証しない。各自の責任において利用すること。また、決してAppleに問い合わせたりしないように。 |