gpt4 book ai didi

java - 将图标添加到 JFrame 时出现问题

转载 作者:行者123 更新时间:2023-12-01 19:15:40 24 4
gpt4 key购买 nike

我尝试了多种方法将图标添加到 JFrame 中。当我使用源代码运行每个方法时,它都可以完美运行。

例如:

jframe.setIconImage(Toolkit.getDefaultToolkit().getImage("iconimages/icon.png"));

但是当我使用 jar 文件运行它时,它们都不起作用。我知道问题出在图像文件的路径上。我该如何解决这个问题?

编辑:

public Ui() { 
initComponents();
setLocationRelativeTo(null);
this.setIconImage(getImageIcon("icon.png").getImage());
}

private ImageIcon getImageIcon(String fileName) {
String imageDirectory = "iconimages/";
imgURL = getClass().getResource(imageDirectory + fileName);
return new ImageIcon(imgURL);
}

我尝试过这个,但现在出现空指针异常。

-------------------------------------------------------- ------------------------------------------------

编辑[解决方案]:我找到了解决方案。

我另外添加了 ../ 到路径中,它工作得很好! :D

 ImageIcon imageIcon = new ImageIcon("../imageicons/icon.png");
this.setIconImage(imageIcon.getImage());

感谢大家尝试帮助我。 :)

最佳答案

您应该使用 URL。像这样:

 /**
* Loads and returns an {@link Image} resource.
* @param fileName name of the image resource.
* @return Image as resource.
*/
public Image getResourceImage(String fileName) {
String imageDirectory = "images/";
URL imgURL = getClass().getResource(imageDirectory + fileName);
Image image = null;
try {
image = ImageIO.read(imgURL);
} catch (IOException e) {}
return image;
}

关于java - 将图标添加到 JFrame 时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6758032/

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