ユーザーがコンボボックスでEnterキーを押すと、フォーカスを変更したい。まず、アクションリスナーを使用しましたが、矢印キーを上下に押したり、ドロップダウンで値を選択したりすることでユーザーが値を変更したときにもトリガーされます。JavaFX Combobox:入力用に押されたキーを処理する
したがって私はキーハンドラを登録することで解決できると思っていました。しかし、ENTERキーでは機能しません。
問題を解決する方法はありますか?
編集:
申し訳ありません、私は自分のイントロが十分だと思いました。
だから私はいくつかのテキストフィールドとcomboBoxのフォームを持っています。ユーザビリティを高めるために、ユーザは次のフィールドに切り替えるためにEnterキーを押すだけでよい。
textfield.setOnAction(e -> {
cmbTax.requestFocus();
});
しかし、私はアクションリスナーを登録する場合は、値が変更されたとき、それは常にトリガされますので、それは、私の要件を満たしていないだろう:これは、テキストフィールドのための素晴らしい作品
cmbTax.setOnAction(e->textfield2.requestFocus());
だから、私が試しましたキーリスナーが、私のリスナーが呼び出されることになる前に、それが内部処理されるためには、ENTERに反応しなかった。
cmbTax.getEditor().setOnKeyPressed(this::handleKeyPressedForComboBox);
よろしく
を
ポスト[MCVE]は、あなたがこれまでに行って、あなたが問題を抱えているところdescibeているかを示します。 – MBec