【发布时间】:2011-07-14 08:16:58
【问题描述】:
JList可以多列显示吗????
【问题讨论】:
-
这取决于你所说的column。
-
有一个秘籍:如果使用等宽字体,可以测量左列最宽的条目,每个条目都可以填充空格,所以现在你有了准列。
JList可以多列显示吗????
【问题讨论】:
绝对!您需要调用 setLayoutOrientation 来指示列表在转到新行之前应该如何包装其数据。您可以使用 JList.HORIZONTAL_WRAP 或 JList.VERITCAL_WRAP。这告诉数据像往常一样显示(作为列表),然后在到达底部时换行。
如果您想将该调用与 setVisibleRowCount(-1) 结合使用,则可以在可用空间中显示尽可能多的项目。
【讨论】:
使用专为此目的设计的JTable。
【讨论】:
JTable 不是为此目的而设计的。 JTable 设计用于具有不同数据的多个列,其中该行的所有列都相互关联。 OP 要求提供可以在多列中列出的单个值列表,以更好地利用屏幕空间,这是一个不同的目的。
比较 camickr 和 JasCav 的两个答案:
这是一个包装好的图标对象的 JList:
这是一个带有第二行图标的 JTable 和一个特殊的 TableCellRenderer:
(均来自my current project。)
【讨论】: