应用程序图标未跟随导出的项目



从 Eclipse 运行应用程序时,我的应用程序图标工作正常,但是一旦我将其导出为可运行的 jar,它就不会出现。

这是我用来设置图标的代码:

try {
    setIconImage(ImageIO.read(new File("resources/icons/icon.png")));
}
catch (IOException exc) {
    exc.printStackTrace();
}

该图标位于名为 resources/icons 的源文件夹中。

为什么图标不包含在导出中?

现在使用 URL,而不是使用 File 方法查找图标。这很好用!

默认情况下是否可以更改文件的图标?我想我必须使用资源黑客或类似的东西才能改变它。但如果可以通过代码实现,我很想学习它!

您可以使用

getResource代替new File(),如下所示:

Icon icon = new ImageIcon(getClass().getResource("resources/icons/icon.png"));

所以你的setIconImage应该是这样的:

setIconImage(new ImageIcon(getClass().getResource("resources/icons/icon.png")).getImage());

如果您的图标退出包内,您可以这样做:

Icon icon = new ImageIcon(getClass().getResource("/com/icons/icon.png"));

所以你的setIconImage应该是这样的:

setIconImage(new ImageIcon(getClass().getResource("/com/icons/icon.png")).getImage());

希望这有帮助。

最新更新