当前位置: 首页 > 知识库问答 >
问题:

将值和标签设置为Java中的项目JComboBox

阎英朗
2023-03-14

我有一个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]);
    }

正如您在代码中看到的,每个项目的“标签”都是它的名称。现在,如何设置每个项目的ID,以便我可以操作之后?

共有1个答案

赫连俊雄
2023-03-14

您需要使用值的ID作为JComboBox中的值,并使用自定义ListCellRenler查找ID值的名称。

为此,您可以按名称的 ID 构建名称映射,并让呈现器返回值的名称。

 类似资料:
  • 问题内容: 我有一个JComboBox,其中的项目是查询的结果。该组合显示了来自查询的所有类别名称,对吗?好的,可以。现在,我需要为每个项目赋予一个值,该值就是产品的ID。 到目前为止,这是我得到的: 正如您在代码中看到的那样,每个项目的“标签”都是它的名称。现在,如何设置每个项目的ID,以便以后进行操作? 谢谢,并尝试轻松回答,我正尽最大努力尝试获取Java东西!哈! 问题答案: 默认情况下使用

  • 我有一个JComboBox,其中项目是查询的结果。组合显示了从查询中获取的所有类别名称,对吗?好的,它起作用了。现在我需要给每个项目一个值,这将是产品的ID。 这是我到目前为止得到的: 正如您在代码中看到的,每个项目的“标签”都是它的名称。现在,如何设置每个项目的ID,以便我可以操作之后? 谢谢,试着轻松回答,我很难得到这个Java的东西!哈!

  • 我有一个ListCollectionView,它保存了一堆对象场景的条目。场景中的属性之一是位置。 当我浏览列表集合视图时,我想将位置属性的值设置为视图中组合框中的选定项。每次转到 ListCollectionView 中的不同项时,我都希望在组合框中将新位置显示为 SelectedItem。 我知道如何在常规的文本框和文本块中完成这项工作,但不是在组合框中。 视图模型 查看 对于文本框,foll

  • 问题内容: 我正在使用创建饼图,我想像在中那样分别设置值和标签。换句话说,我希望图表在饼图中显示的结果与图例中显示的结果不同。有什么办法可以做到这一点? 问题答案: 所述 ArgumentIndex 值对应于 系列名 , 域 和 范围 。您可以为基础中的每个系列或所有系列设置不同的生成器。 附录:对于,值的含义略有不同- 系列名称 , 值 和 百分比 。

  • 所以在我的项目中,我只是想让背景文件有一个gif播放,让它看起来更好,但是我找到的每个解决方案都不起作用。我在JLabel上制作gif,然后将所有内容都添加到JLabel上的解决方案不起作用,项目运行了,但是屏幕上没有显示任何内容。我把gif叫做 我的主长这样 我在乞讨中扩展了JPanel。我添加了一堆盒子,这些盒子有一堆JButton 这有可能吗?

  • 是否可以为所有xml视图的宽度和高度设置项目默认值?我的xmls中80%的项具有: Android:layout_width=“match_parent”