2
AutoCompleteTextFieldがロード時に提案選択イベントを発生させているようです。私はこれをListModelでテストします。 barebone hello worldプロジェクトの下のコードでこの問題を再現することができます。ロード時にオートコンプリートテキストフィールドの発動選択イベント
public void start() {
if (current != null) {
current.show();
return;
}
Form hi = new Form("Hi World");
ListModel<String> suggestionsModel = new DefaultListModel<String>();
suggestionsModel.addItem("Apple");
suggestionsModel.addItem("Banana");
suggestionsModel.addItem("Chocolate");
suggestionsModel.addItem("Elk");
suggestionsModel.addItem("Fish");
AutoCompleteTextField search = new AutoCompleteTextField(suggestionsModel);
suggestionsModel.addSelectionListener(new SelectionListener() {
@Override
public void selectionChanged(int oldSelected, int newSelected) {
System.out.println("SUGGESTION SELECTED"+suggestionsModel.getSelectedIndex());
}
});
hi.add(search);
hi.show();
}
あなたがコードを実行する場合は、「SUGGESTION SELECTED0は」二度選択が負荷に発砲し、デフォルトで最初の提案を選択していることを確認し、印刷されることを見ることができます。
これは私の問題を引き起こしています。私はオブジェクトを探していて、見つかったらその属性をユーザに表示しています。この問題では、ロード時に最初のオブジェクトの属性がデフォルトで表示されています。