Q1:
キーイベントハンドラーで、VK_ENTERにてイベントを引き渡し、何かしらの動作をしたいと思っています。
そこで、すべて試したわけではないのですが、サンプルの通りVK_ENTERとVK_F2の時だけ、どうもうまく処理が動かないようなんです。ENTERとF2の、キーイベントハンドラーの設定が間違っていますか?
関連ファイル:test.mzax
A1:
フィールド類等のEnetrキーを押すとアクションイベントが発生するコンポーネントは、[キーイベントハンドラー]ではなく、先にコンポーネントによってイベントが取得されてしまいます。
Enetrキー押下によりアクションイベントが発生するコンポーネントでの[キーイベントハンドラー]でのEnetrキーイベント取得は、あまりお勧め致しません。
[F2] キーでの動作は、お送り頂いたファイルではメソッドが消えてしまっている箇所がありましたので、そのためかと思います。
ファイルの内容のように、フィールド内でEnterキーを押すと次のフィールドにフォーカスが移動するという動作を実現したい場合には、「Enetrキーによるフォーカス移動」設定をお試し下さい。
フレーム、ダイアログ、パネル、スクロールパネル、分割パネルを右クリックで表示されるポップアップメニューから[フォーカス移動]>[Enterキーによる移動]>[有効/無効]設定を行えます。
なお、Enterキー押下によるフォーカス移動を有効とした場合には、Enter押下によるキーフィールドやボタンからのアクションイベントは発生しなくなります。
ご連絡:
F2は、ご指摘の通りメソッドが消えていたので使えなくて当たり前のようです。回答の通り、パネルのENTERでの動作で問題ないですとの事でした。有難う御座いました。