gpt4 book ai didi

java - 在 jLabel 上使用 setIcon 会重复旧图像

转载 作者:塔克拉玛干 更新时间:2023-11-01 22:00:33 25 4
gpt4 key购买 nike

我正在尝试使用 setIconjLabel 显示从网站下载的图像

jLabel5.setIcon(new ImageIcon("image.png"));

在程序启动时,图像不存在,它被下载,然后显示,没有问题。但如果它发生变化,即使它下载了更新版本的图像,它也会显示旧版本,就好像它有它的缓存或其他东西一样。

有人知道为什么会这样吗?使用或不使用此方法如何获得解决方法?

我也曾尝试执行以下操作以查看是否有帮助,但没有成功:

jLabel5.setIcon(null);
jLabel5.setIcon(new ImageIcon("image.png"));

它不会显示任何内容,然后再次显示相同的旧图像。

最佳答案

it will display the old one, as if it had a cache of it or something.

是的,缓存是问题所在。这里有几个选项:

//  This works using ImageIO

imageLabel.setIcon( new ImageIcon(ImageIO.read( new File(imageName) ) ) );

// Or you can flush the image

ImageIcon icon = new ImageIcon(imageName);
icon.getImage().flush();
imageLabel.setIcon( icon );

关于java - 在 jLabel 上使用 setIcon 会重复旧图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8084115/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com