繁体   English   中英

Java:如何更新自定义ListCellRenderer?

[英]Java: How to update custom ListCellRenderer?

我为聊天应用程序实现了自己的ListCellRenderer。 我使用JList列出所有用户。 单元格渲染器主要由一个图标组成,该图标显示特定用户当前处于联机状态还是脱机状态及其姓名。 该列表由DefaultListModel控制,我用它为JList提供必要的信息。

但是,当列表模型确实更改其状态时(例如,用户脱机),列表单元渲染器似乎没有被调用?

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

提前谢谢了!

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

您不仅应该使用听起来不错的名称来调用随机方法( updateUI功能大不相同)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM