我有一个包含国家/地区列表的 jCombobox。它由数据库填充并包含 countryID 和 countryName,因此组合框中仅显示国家名称,但是当单击一个值时,它将返回所选国家的 ID。我已经设法使用自定义 ListCellRenderer 实现了这一点。
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);
}
现在我想要的是为此组合框提供自动完成功能,以便用户可以键入国家名称并有效地导航到组合框列表中的“感兴趣的地区”。关于如何实现这一目标的任何想法?