修复JList的最大大小并更改空单元格的外观

时间:2012-06-04 15:19:36

标签: java swing size jlist max

我正在使用最多可包含8个项目的JList处理UI内容。逻辑上我已经阻止应用程序一旦达到它的限制就添加到JList,但是,我想知道是否有一种方法可能明确地设置JList本身的限制。这将有助于我想要做的下一件事,即重新绘制空单元格(最多8个单元格),以指示它们是可以填充的空槽。我正在尝试找到一种方法(可能通过扩展ListUI),这不涉及将占位符元素添加到JList中以表示空格。

2 个答案:

答案 0 :(得分:2)

我认为最简单的方法是实现一个列表模型(使用DefaultListModel或AbstractListModel)我的想法是模型总是有8个项目。所有这些都带有空信息。

如果向模型添加新项目,则可以使用该项目的特定文本替换空白文本。该模型将跟踪有关将多少项添加到模型的跟踪。如果你试图添加更多的MAX_ITEMS,你可以提出异常或类似的东西。

实现DefaultListModel非常简单,你在Internet上有很多样本。

答案 1 :(得分:2)

您可以尝试显示here的方法,该方法将增长限制为N条目,之后启用滚动。显示hereListCellRenderer可用于更改项目的外观。