gpt4 book ai didi

Java:如何更新自定义ListCellRenderer?

转载 作者:行者123 更新时间:2023-12-01 19:07:45 32 4
gpt4 key购买 nike

我为我的聊天应用程序实现了自己的 ListCellRenderer。我使用 JList 列出所有用户。单元格渲染器主要由一个图标组成,该图标显示特定用户当前是否在线或离线以及他/她的姓名。该列表由 DefaultListModel 控制,我用它为 JList 提供必要的信息。

但是当列表模型确实改变其状态时(例如,用户离线),列表单元格渲染器似乎不会被调用?

有人知道如何解决这个问题吗?尝试在 JList 实例上调用 updateUI(),但没有帮助。

非常感谢!

最佳答案

单元格渲染器可能工作正常。不起作用的是 ListModel。 DefaultListModel 不会检测模型对象内部状态的更改。您需要在列表模型上调用 fireContentsChanged。可能您需要向模型对象添加监听器,甚至可能需要扩展 DefaultListModel;因为我没有看到它的代码,所以我不知道你的代码是什么样的。

您不应该只调用一个听起来不错的随机方法(updateUI 做了一些非常不同的事情)。

关于Java:如何更新自定义ListCellRenderer?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9419977/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com