在资源外设置 JFrame 图标

Setting JFrame icon outside of resoruce

我正在尝试为我的应用程序设置自定义图标,该图标位于启动文件夹中,但图标未显示。

以下是我目前尝试过的方法:

1:

myApp = new JFrame();
ImageIcon ImageIcon = new ImageIcon(objTools.getApplicationStartUpPath() + "/appicon.ico");
Image Image = ImageIcon.getImage();
myApp.setIconImage(Image);

2:

myApp.setIconImage(Toolkit.getDefaultToolkit().getImage(objTools.getApplicationStartUpPath() + "/appicon.ico"));

第三种方法可行:

myApp.setIconImage(Toolkit.getDefaultToolkit().getImage(APP.class.getResource("/img/appicon.ico")));

最后一个是从资源中加载的,但这不是我想要的。

我是不是做错了什么?

试试:

JFrame frame = new JFrame("Test");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setIconImage(ImageIO.read(new File(PATH)));
frame.setBounds(100, 100, 400, 400);
frame.setVisible(true);

其中 PATH 是一个 String,代表您徽标的位置。