java - 如何将多个数组添加到 JComboBox?

标签 java arrays swing jcombobox

我正在为一些类(class)制作剧院座位预订系统,但在创建 JComboBox 以帮助用户从总共 197 个座位中选择一个座位时遇到了问题。

座位由“Seat”对象表示,这些对象仅仅是一些变量的集合,例如“isBooked”( boolean 值)。座位排列成多个座位阵列,每个阵列代表一排座位。 A[], B[]...

对于座位的预订,必须将座位按行分开,因为它们的价格不同,但是 JComboBox 将用作选择要取消预订的座位的方式,因此只需要完整的座位列表。

我可以轻松地将单个数组添加到 JComboBox 并让它正常工作,但尝试将任何更多数组添加到 JComboBox 中的列表失败。

如何向 JComboBox 添加多个数组? 即 A[1]、A[2]、A[3]...A[14]、B[1]、B[2]...

我对 Java 不是很有经验,如果这是一个愚蠢的问题,我很抱歉。 经过过去几天的大量研究,我尝试使用 DefaultComboBoxModel 类进行试验,但显然没有正确使用它。这是我最近一次尝试解决我的问题:

DefaultComboBoxModel model = new DefaultComboBoxModel();
            model.addElement(A);
            model.addElement(B);
            model.addElement(C);
            model.addElement(D);
            model.addElement(E);
            model.addElement(F);
            model.addElement(G);
            model.addElement(H);
            model.addElement(J);
            model.addElement(K);
            model.addElement(L);
            JComboBox seatCombobox = new JComboBox();
            seatCombobox.setModel(model);
            unbookSeatWindow.buttonsPanel.add(seatCombobox);

我们将不胜感激。

最佳答案

您的 DefaultComboBoxModel 代码是正确答案。您只需从尽可能多的数组中添加元素。

我可以建议您使用两个 JComboBox 组件。一个用于分区,另一个用于座位号。否则,您的用户在阅读包含数百个席位的列表时会感到沮丧。

关于java - 如何将多个数组添加到 JComboBox?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15644063/

相关文章:

java - 如何将n个数字相加,相乘到数组中的给定范围,并以O(n)时间反转数组中的范围?

java - JMX Spring连接本地主机而不指定服务器地址和端口

javascript - 使用 JavaScript,如何将使用 forEach() 解析的两个数组中的项目组合成单个字符串?

java - 我收到 .getDateEditor 错误

java - JFrame 每次启动都会推出不同的尺寸

java/swing : drag and drop problems with two child windows

java - "Select Distinct Null As xxxxx"是什么意思?

java - 比较两个基元的内存位置

java - 无法引用 Action 监听器 (Jframe) 内的非变量

javascript - 在javascript es6中将嵌套对象转换为递归数组或嵌套数组