5

IB のメニュー バー項目に相当するキーをバックスペース キー (カーソルの左側を削除) に設定したいのですが、何らかの理由でこれが機能しないようです。CMD + バックスペース、または fn + バックスペース (削除キー、つまり右から削除) など、あらゆる種類のキーを割り当てることができますが、単純なバックスペース キーを割り当てると、まったく登録されません。

バックスペース キーを使用するには、別の操作を行う必要がありますか?

PS: 他の方法でキーを処理したくありません。メニュー項目のキーに相当するものでなければなりません。

編集: IB を使用して、メニュー項目に相当するキーを設定しました。前にも言いましたが、読めない人もいます。IBで設定する方法を知っており、バックスペースキー以外のすべてで機能します。

4

3 に答える 3

11

NSMenuItem Class ReferencesetKeyEquivalent:のメソッドの説明を参照してください。

メニュー項目に相当するキーとして Backspace キーを指定する場合は、 (で定義されている) を使用して単一の文字列を使用NSBackspaceCharacterし、Forward Delete キーには(で定義されNSText.hている) を使用します。これらの文字は、これらのキーを押したときにキーダウン イベントから得られる文字とは異なることに注意してください。0x08NSDeleteCharacterNSText.h0x7FNSEvent

ちなみに、私は通常、Interface Builder でメニュー項目の Key Equivalent を Backspace に設定することができ、サンプル アプリ (Xcode テンプレートから作成し、File-Close の Key Equivalent を Backspace に設定) で動作しました。Snow Leopard で Xcode 4.2 を使用しています。シナリオにキー バインディングの競合はありますか?

于 2012-04-26T04:39:19.480 に答える