我正在尝试制作一个多列 JComboBox。我环顾四周,这似乎是一件非常棘手的事情。除非有很多人,否则我对有一个表格(在其中选择一行)不感兴趣:我需要消除 JComboBox 中的滚动条,为了实现这一点,我想将其项目放置在多列中列出而不是将它们仅放在一列中。
到目前为止,我最好的选择是这样做:
JComboBox dropdown = new JComboBox(validValues);
CellRendererPane crp = (CellRendererPane) dropdown.getComponent(1);
crp.setLayout(new GridLayout(4, 4)); // for 16 items...
但它不起作用。它仍然将单元格放在一列中。我尝试在设置 LayoutManager 后添加项目,但不影响结果。
任何人都知道如何实现这一目标?
到目前为止,我已经看到 ListCellRenderer 没用。它只指定如何绘制一个单元格(一次一个),而不是如何放置所有单元格(它们彼此的相对位置是什么)。
欢迎任何帮助!
谢谢!
乔丹