Reputation: 15
This shows the icon when I launch through eclipse, but when I export it to a Runnable Jar It shows the default Java icon, I do not want to use the Resource way of doing it since it doesn't work in the IDE even.
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();
}
Upvotes: 0
Views: 3165
Reputation: 15
The problem was that I was using the wrong run as file, a stupid mistake but thats what I get for not having my Workspace clean.
I'd like to thank everyone who tried to help.
Upvotes: 0
Reputation: 1593
Try this following code to set the iconImage to the frame:
frame.setIconImage(new ImageIcon("res/game.png").getImage());
Even in this oracle doc you can find this same approach.
Edit: Have you tried this code. It might be helpful:
frame.setIconImage(new ImageIO.read(new File("res/game.png")));
Check out this explation too.
Upvotes: 0
Reputation: 5950
please use the following code
Image image = ImageIO.read(getClass().getResourceAsStream("/res/icon.png"));
setIconImage(new ImageIcon(image).getImage());
and put your icon file in res
folder of src
folder. But it'll display the icon of frame when you execute the jar file. Working fine for me.
Upvotes: 1