JList中的多列显示

发布于 2024-10-21 08:37:02 字数 25 浏览 3 评论 0原文

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

Is it possible to have multiple column display in JList ????

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

心如狂蝶 2024-10-28 08:37:02

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

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

Absolutely! You need to make a call to setLayoutOrientation which indicates to the list how it should wrap its data before going to a new row. You can use JList.HORIZONTAL_WRAP or JList.VERITCAL_WRAP. This tells the data to be displayed as usual (as a list) and then wrap when it reaches the bottom.

If you want to combine that call with setVisibleRowCount(-1), you can then display as many items possible in the space that is available.

儭儭莪哋寶赑 2024-10-28 08:37:02

使用专为此目的而设计的 JTable

Use a JTable which is designed for this purpose.

止于盛夏 2024-10-28 08:37:02

比较 camickr 和 JasCav 的两个答案:

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

这是 Icon 对象的包装 JList:

wrapped JList

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

jTable

(均来自 我当前的项目。)

To compare the two answers by camickr and JasCav:

  • If you need multiple columns of data which somehow is linked together (like first column user name, second column icons of these users), a JTable is the right thing to use.
  • If you simply want to use the screen space better by filling multiple columns of the same data, use the wrapping JList like described by JasCav.

Here is a wrapped JList of Icon objects:

wrapped JList

Here is a JTable with icons in the second row and a special TableCellRenderer:

jTable

(Both from my current project.)

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文