GOLF Function Keyへの対応
六の日記はここにはないぞ でGolfを実戦投入されるとの事でうれしく思っています。
http://d.hatena.ne.jp/rokugen/20070223
ここで、ファンクションキーを使った時に、現在のLost Focus時にBindingする設定では、
編集中の内容がBindingされないとの問題点が指摘されており、ソースを見ていただき、
JGoodies BindingのParameterを変更して対応をしたとの事でした。
次回のGOLFで、このParameterを設定可能にする事も可能ですが、私自身はKey入力される
度に Validationされるのは煩わしいと感じています。
そこで考えたのが下記のコードです。
画面のConstractorに追加すると、(この例はFunction KEY F9の場合)この中でfocusNextComponent()を
呼び出しているので、Binding後 Validationが実施されます。
KeyboardFocusManager.getCurrentKeyboardFocusManager() .addKeyEventDispatcher(new KeyEventDispatcher(){ public boolean dispatchKeyEvent(KeyEvent evt){ int keyCode = evt.getKeyCode(); if ( keyCode == KeyEvent.VK_F9) { KeyboardFocusManager.getCurrentKeyboardFocusManager() .focusNextComponent(); formManager.getFormValidationManager().Validate(true); } return false; } });
これも一案かと思います。
Parameterを設定についてご意見があればコメント頂けると幸いです。