gpt4 book ai didi

java - 如何从 JComboBox 中的选定项目中获取包含 2 个项目的数组?

转载 作者:行者123 更新时间:2023-11-30 03:56:33 25 4
gpt4 key购买 nike

我有一个ArrayList<ArrayList<Object>> Suppliers 。每个ArrayList<Object>有 2 个元素,一个 int(一个 id 且 id 可能不是彼此连续的。)和一个字符串(名称)。现在,在 JComboBox 中,我创建一个 DefaultComboBoxModel,其中包含主 ArrayList“供应商”。

jcbSuppliers.setModel (new DefaultComboBoxModel (suppliersdata.Suppliers.toArray ()));

JComboBox 显示了每个元素,例如 [1,本地供应商],[2,外部供应商],[4,其他供应商]。

Capture 1

在 NetBeans 调试中,我在 jcbSuppliers 上放置了一个 Watch。变量窗口显示 jcbSuppliers 的每个元素都是一个包含 2 个对象的 ArrayList。

Capture 2

现在我的问题是:

如何获取这 2 个项目或这 2 个对象的数组,以及所选对象或项目的数组?

非常感谢您的帮助。非常感谢。

最佳答案

  • 首先,我必须向 Flextra 和他的评论表示敬意,因为 Spring 可以帮助您解耦代码,使其更容易增强和调试。
  • 接下来我建议您重新考虑当前的模型设置。我建议您创建一个自定义类来保存每个供应商需要的两条数据,而不是从嵌套的 ArrayList 开始。
  • 然后创建此自定义类的一个非嵌套 ArrayList。
  • 然后,您可以通过为 JComboBox 提供一个 toString() 方法来告诉 JComboBox 如何显示您的对象,该方法会根据您的需要显示信息,
  • 或者为 JComboBox 提供一个自定义单元格渲染器,以根据您的需要显示信息。
  • 然后,当选择组合框时,如果您获得 selectedItem,它将是您的类的一个对象,并且可以轻松提取两个相关的信息。

关于java - 如何从 JComboBox 中的选定项目中获取包含 2 个项目的数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23025733/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com