アイテムから一致する検索機能を持つ ComboBox を作成しようとしています。
これが私が行ったことのコードサンプルです。
ObservableList<String> ab = FXCollections.observableArrayList("z", "asxdf", "abasdf", "bcasdf", "b", "bc", "bcd", "c");
final ComboBox box = new ComboBox(ab);
box.setEditable(true);
box.setOnKeyReleased(new EventHandler<KeyEvent>() {
@Override
public void handle(KeyEvent t) {
box.show();
for (String item : items) {
if (item.startsWith(box.getEditor().getText())) {
box.getSelectionModel().select(item); //which selects the item.
break;
}
}
}
});
問題はbox.getSelectionModel().select(item);
、ComboBox に入力された特定の項目を選択することですが、その項目を選択したくありません。マウスがホバーしたときのように、その項目にホバー (フォーカス) したいだけです。
誰かが私に置き換えるコードを教えて、box.getSelectionModel().select(item);
この問題を解決するのを手伝ってくれますか?