首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Java:如何更新自定义ListCellRenderer?

Java:如何更新自定义ListCellRenderer?
EN

Stack Overflow用户
提问于 2012-02-24 03:37:21
回答 1查看 1.7K关注 0票数 0

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

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

有人知道怎么解决这个问题吗?尝试在JList实例上调用updateUI(),但无济于事。

首先要感谢大家!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-02-24 03:47:58

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

您不应该只是使用听起来很好听的名称来调用随机方法(updateUI做了一些非常不同的事情)。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9419977

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档