我正在尝试使用Twitter4构建Twitter客户端。我将用户推文和信息等存储在Jlist的DefaultListModel中。我想添加用户个人资料图片,并执行此操作我使用ListCellRenderer设置图标。我的问题在于,我只能将ListCellRenderer文本和图标设置为一个用户信息。我使用循环下拉多个推文并将它们添加到模型中,但渲染器仅多次设置一条推文。动态更改ListCellRenderer的内容
这是检索鸣叫
for (int i = 0; i < list.size(); i++) {
Status each = (Status) list.get(i);
UI.model.addElement("<html><body style='width: 450px;'>"
+ "@"
+ each.getUser().getScreenName()
+ " - "
+ each.getText() + "<html><br>");
UI.whatIsDisplayedList.setCellRenderer(new newsFeedRenderer(each)); }
的代码,这是我如何设置ListCellRenderer
JLabel pic = new JLabel();
try {
ImageIcon img = new ImageIcon(TwitterFunctions.eachTweetProfilePic(each.getUser()));
pic.setIcon(img);
setIcon(img);
} catch (IllegalStateException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (TwitterException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
setText("@" + each.getUser().getScreenName() + " - " + each.getText());
我会得到什么修改,使其启用鸣叫的正确格式?
感谢您的帮助!
再次,如您在[上一个问题]中提到的(http://stackoverflow.com/questions/15488883/applying-a-listcellrenderer-to-individual-cells-请在jlist上创建并发布[sscce](http://sscce.org)。请记住,我们都是志愿者,所以回答这个问题或让它更容易回答的努力的责任应该是你的。请阅读链接。 – 2013-03-18 23:52:37
@iainmac认为您的渲染器像橡皮日期印模(https://www.google.com/search?q=date+stamper&hl=zh-CN&tbm=isch)。您输入的值会修改渲染器的输出,但每个值都使用相同的渲染器(或橡皮图章)。 – rob 2013-03-19 00:37:05