我有一个JComboBox,其中的项目是查询的结果。组合显示从查询中获取的所有类别名称,对吧?好的,它有效。现在我需要给每个项目一个值,这个值就是产品的ID。
这是我到目前为止所得到的:
final JComboBox proveedorCombo = new JComboBox();
contentPanel.add(proveedorCombo);
ProveedorDAO dao = new ProveedorDAO();
List<Proveedor> proveedor = dao.getAll();
Object[][] elementos = new Object[proveedor.size()][2];
for (int i = 0; i < proveedor.size(); i++) {
Proveedor p = proveedor.get(i);
elementos[i][0] = p.getId();
elementos[i][1] = p.getNombre();
proveedorCombo.addItem(elementos[i][1]);
}
正如您在代码中看到的那样,&#34;标签&#34;每个项目的名称是它的名称。现在,我如何设置每个项目的ID,以便我可以操作?
答案 0 :(得分:0)
您需要使用值的ID作为JComboBox中的值,并使用自定义ListCellRenderer查找ID值的名称。
您可以通过按ID构建名称映射,并让渲染器返回值的名称来执行此操作。