【问题标题】:Fixing the maximum size of a JList and changing the look of empty cells修复 JList 的最大大小并更改空单元格的外观
【发布时间】:2012-06-04 15:19:36
【问题描述】:

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

【问题讨论】:

    标签: java swing size jlist max


    【解决方案1】:

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

    如果您向模型添加新项目,您可以将空文本替换为该项目的特定文本。模型将跟踪向模型中添加了多少项目。如果您尝试添加更多 MAX_ITEMS,您可以抛出异常或类似的东西。

    实现 DefaultListModel 非常简单,并且您在 Internet 上有很多示例。

    【讨论】:

      【解决方案2】:

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

      【讨论】:

        猜你喜欢
        • 2020-09-11
        • 2021-09-30
        • 1970-01-01
        • 1970-01-01
        • 2016-08-15
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-09-13
        相关资源
        最近更新 更多