Java JList中的多列显示

Java JList中的多列显示,java,swing,jlist,Java,Swing,Jlist,是否可以在JList中显示多列???绝对!您需要调用setLayoutOrientation,它向列表指示在转到新行之前应如何包装其数据。您可以使用JList.HORIZONTAL\u WRAP或JList.vertical\u WRAP。这告诉数据要像往常一样显示(作为列表),然后在到达底部时进行换行 如果要将该调用与setVisibleRowCount(-1)结合使用,则可以在可用空间中显示尽可能多的项目。使用专门为此设计的选项。比较camickr和JasCav的两个答案: 如果您需要多个

是否可以在JList中显示多列???

绝对!您需要调用setLayoutOrientation,它向列表指示在转到新行之前应如何包装其数据。您可以使用JList.HORIZONTAL\u WRAP或JList.vertical\u WRAP。这告诉数据要像往常一样显示(作为列表),然后在到达底部时进行换行


如果要将该调用与setVisibleRowCount(-1)结合使用,则可以在可用空间中显示尽可能多的项目。

使用专门为此设计的选项。

比较camickr和JasCav的两个答案:

  • 如果您需要多个以某种方式链接在一起的数据列(如这些用户的第一列用户名、第二列图标),那么使用JTable是正确的
  • 如果您只是想通过填充相同数据的多个列来更好地使用屏幕空间,请使用JasCav描述的包装JList
以下是图标对象的包装列表:

这是一个JTable,第二行有图标和一个特殊的TableCellRenderer:


(两个都来自。)

这取决于您的意思。对不起,
JTable
不是为此而设计的
JTable
设计用于具有不同数据的多列,其中该行的所有列都是相关的。OP要求提供一个可以在多个列中列出的值列表,以更好地利用屏幕空间,这是另一个目的。@searchengine27 OP“接受”了答案,因此我认为他们比你更清楚他们想要什么。他是否接受并不重要,你的回答根本没有回答他的问题。他需要修改他的问题,以表明他的意思,如果是这样的话,这个答案是可以接受的。在它的当前状态下,它不会回答他的问题。@searchengine27,是的,问题得到了回答。你对这个问题的解释无关紧要,这不是你的问题。如果OP想要使用JList更好地节省屏幕空间,他可以“接受”显示如何使用包装的其他任何一个答案。无论如何,OP问题的意图不是由你决定的。人们的英语水平各不相同,接受答案表明我理解他问题的意图。你的“当前项目”链接到apache测试页面…