1

我正在尝试将 a 加载Image到 aList中,但似乎无法使其正常工作。我努力了

ImageIcon pic = new ImageIcon("http://i3.ytimg.com/vi/68X8RUxeXeA/default.jpg");
JLabel picLbl = new JLabel(pic);

Object[] lol = {picLbl, "pic", "length"};
list = new JList(lol);
scrollPane.setViewportView(list);
list.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);

那只是放javax.swing.JLabel[,0,0,0x0,invalid,alignmentX=0.0,alignmentY=0.0,border=,flags=8388608,maximumSize=,minimumSize=,preferredSize=,defaultIcon=http://i3.ytimg.com/vi/68X8RUxeXeA/default.jpg,disabledIcon=,horizontalAlignment=CENTER,horizontalTextPosition=TRAILING,iconTextGap=4,labelFor=,text=,verticalAlignment=CENTER,verticalTextPosition=CENTER]

而不是实际的图片。我环顾四周,但似乎找不到任何有效的方法。如果你们中的任何人知道如何实现这一点,任何帮助将不胜感激。

提前致谢

4

2 回答 2

2

ADefaultListCellRenderer是 a JLabel,因此您可以与 asetIcon()一起使用ImageIcon。这个相关的例子可能是一个有用的起点。

于 2012-09-16T15:09:49.100 回答
2

Jlist 不能显示 Jlabels。从您的 Image 创建一个 ImageIcon 并将其用于您的元素数组。

如果您想了解更多关于 JList 实际显示元素的信息,请阅读http://docs.oracle.com/javase/tutorial/uiswing/components/list.html#renderer

于 2012-09-16T13:14:59.140 回答