2009年6月24日水曜日

ホットキー変更対応(13) - キー入力を表示

このエントリーをブックマークに追加 このエントリーを含むはてなブックマーク

さて下準備ができたのでいよいよ入力キーを表示させてみる。

まず今までの検証コードを少し削除して必要なものだけ残す。インターフェイスは NSTextViewだけ残す。


コードはサンプルを参照のこと。

サンプル:HotkeyUI-2.zip

基本的には今まで紹介した内容を組み合わせただけで特別なことはやっていない。



さて実行してみよう。

まずは Commandキーを押しながら D (※深い意味は無い)


出た。

次は修飾キー全部押し。Control + Option(Alt) + Command + Shift + 'H'


おお出た。ちょっとうれしい。

特別なキーもこの通り。

Deleteキー


矢印


Returnキー



なお '@'(すなわち Shift + '2')は次のように表示される。


表示文字ではなくキーを判定するのでこれで良い(と思う)。

2 コメント:

匿名 さんのコメント...

kVK_ForwardDelete が抜けているようにおもいます。デスクトップ用キーボードで ⌦ を押すと 0x232b になっちゃいますよ。

xcatsan さんのコメント...

あ、本当ですね。
ソースを見ると..

{ kVK_ForwardDelete , @"ForwardDelete" , @"0x232b" , NO },
0x232b になっている。
これは表記誤りで \u232b が正解。

さらに \u232b ではなく \u2326であることが判明。
多分下記だと思います。
kVK_ForwardDelete: ⌦ \u2326
kVK_Delete: ⌫ \u232b

サンプルでは kVK_Deleteは \u2326に割り当てていた(それぞれコードが逆だった)。

後で直しておきます。
指摘ありがとうございました。

橋口。