У меня есть jCombobox, который имеет список стран. Он заполняется базой данных и содержит countryID и countryName, поэтому в поле со списком отображается только название страны, но при нажатии на значение оно вернет идентификатор выбранной страны. Мне удалось добиться этого, используя пользовательский ListCellRenderer.Реализовать autoComplete на jCombobox
public class UGIS_ComboboxRenderer extends JLabel implements ListCellRenderer {
@Override
public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected, boolean cellHasFocus) {
Object[] itemData = (Object[]) value;
setText((String) itemData[1]);
return this;
}
}
Одна страна объект будет выглядеть на эту
Object[] country1 = new Country(){1, "United Kingdom"}
У меня есть ArrayList объектов, как выше, и добавить их в выпадающий список, как этот
for (Object[] temp : countrylist) {
jComboBox1.addItem(temp);
}
Теперь то, что я хочу должен иметь функцию автозаполнения для этого списка, чтобы пользователь мог ввести название страны и эффективно перейти к «Областью интереса» в списке со списком. Любая идея о том, как достичь этого?
Это не сработало. он бросает исключение класса, поскольку мои объекты отформатированы как Object [] {countriID, countryName} –