前もって感謝します、
NativeMenuItem.keyEquivalent を使用して、いくつかのメニュー項目のキーボード ショートカットを設定したいと思います。それらのいくつかは、Insert、Delete、Backspace などのキーを使用します。
これらの文字に keyEquivalent を設定するにはどうすればよいですか? keyEquivalent は文字列なので、このように設定する方法がわかりません
前もって感謝します、
NativeMenuItem.keyEquivalent を使用して、いくつかのメニュー項目のキーボード ショートカットを設定したいと思います。それらのいくつかは、Insert、Delete、Backspace などのキーを使用します。
これらの文字に keyEquivalent を設定するにはどうすればよいですか? keyEquivalent は文字列なので、このように設定する方法がわかりません
keyEquivalent には Insert、Delete などを使用できません。文字と数字のみです。文字列 "insert" を keyEquivalent プロパティに追加すると、メニューに表示されますが、キーボードを押しても自動的に応答しません。
代わりにできることは、標準のキーボードイベントリスナーを使用してこれらのキーの押下をリッスンすることです。そのリスナーは、メニュー項目から Event.SELECT イベントをディスパッチしてメニュー項目を呼び出すか、メニュー項目が実行する関数を直接呼び出すことができます。普通に呼んだ。
item.keyEquivalent = "insert";
item.addEventListener(Event.SELECT, onItemSelect);
stage.addEventListener(KeyboardEvent.KEY_UP, onKeyUp);
...
// menu item handler
private function onItemSelect(e:Event)
{
trace("item was selected.");
}
// keyboard handler
private function onKeyUp(e:KeyboardEvent)
{
if (event.keyCode == Keyboard.INSERT)
item.dispatchEvent(new Event(Event.SELECT));
}