您将如何更改程序图标而不是默认的 java 图标

How would you change your programs Icon instead of the default java icon

这在我通过 eclipse 启动时显示图标,但是当我将它导出到 Runnable Jar 时它显示默认的 Java 图标,我不想使用 Resource 方式来做它,因为它不' 在 IDE 甚至工作。

public static void main(String args[]) {
    Game component = new Game();
    ImageIcon img = new ImageIcon("res/game.png");

    JFrame frame = new JFrame();
    frame.add(component);
    frame.setTitle(NAME);
    frame.setIconImage(img.getImage());
    frame.setResizable(false);
    frame.setLocationRelativeTo(null);
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    frame.pack();
    frame.setVisible(true);

    component.start();
}

尝试使用以下代码将 iconImage 设置为框架:

frame.setIconImage(new ImageIcon("res/game.png").getImage());

即使在这个 oracle doc 中,您也可以找到相同的方法。

编辑: 您是否尝试过此代码。可能会有帮助:

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

也看看这个 explation

请使用以下代码

Image image = ImageIO.read(getClass().getResourceAsStream("/res/icon.png"));
setIconImage(new ImageIcon(image).getImage());

并将您的图标文件放入 src 文件夹的 res 文件夹中。但是当你执行jar文件时它会显示框架的图标。对我来说很好。

问题是我使用了错误的 运行 作为文件,这是一个愚蠢的错误,但这就是我没有清理工作区的结果。

我要感谢所有试图提供帮助的人。