如何将图标设置为 JFrame

2022-09-01 16:55:39

我试过这种方式,但它没有改变?

ImageIcon icon = new ImageIcon("C:\\Documents and Settings\\Desktop\\favicon(1).ico");
frame.setIconImage(icon.getImage());

答案 1

最好使用.png文件;.ico是特定于 Windows 的。最好不要使用文件,而是使用类资源(可以打包在应用程序的jar中)。

URL iconURL = getClass().getResource("/some/package/favicon.png");
// iconURL is null when not found
ImageIcon icon = new ImageIcon(iconURL);
frame.setIconImage(icon.getImage());

虽然您甚至可能考虑将setIconImages用于几种尺寸的图标。


答案 2

尝试将图像放在 src 文件夹外的单独文件夹中。然后,使用 ImageIO 加载映像。它应该看起来像这样:

frame.setIconImage(ImageIO.read(new File("res/icon.png")));

推荐