可能是一个愚蠢的问题。如果是这样,我道歉。我无法通过谷歌搜索找到我需要的东西,但可能是因为我不确定如何说出我需要的内容。
我有这行代码:
JScrollPane scrlPane = new JScrollPane(new JLabel(imgIcon));
这正是我需要它做的。但是,我不确定如何在使用此方法创建imgIcon后更改图像。
如果这是一个愚蠢的问题,我再次道歉。我试图在此方法之外创建一个单独的JLabel并将其添加到JScrollPane,但由于某种原因,它在图像上绘制一个灰色框。我知道它正在绘制图像,因为我可以看到图像的1个像素加载在灰色框的边缘。
谢谢你的时间!
答案 0 :(得分:0)
最简单的方法是保留对JLabel
对象的引用,并使用其setIcon(Icon icon)
方法将其更改为新的ImageIcon
对象。
或者你可以这样做。
JViewport viewport = scrollPane.getViewport();
JLabel label = (JLabel)viewport.getView();
if (label != null) {
label.setIcon(newImgIcon);
}