我有一个Swing的JFrame作为主GUI单元的Java应用程序。我已经通过setIconImage()设置了它的图标。当我在NetBeans中运行此程序时,一切正常,框架图标显示。但是当我编译它并尝试运行jar文件(使用JRE7)时,应用程序与Duke具有标准图标。在NetBeans外部运行应用程序时,如何更改该图标?JFrame的图标不显示
UPD: 好了,下面的代码:
public static void main(String[] args) throws IOException{
URL imgUrl = Polygon.class.getResource("/imgs/icon.png");
Image img = ImageIO.read(imgUrl);
JFrame f = new JFrame();
f.setSize(new Dimension(500, 500));
f.setIconImage(img);
f.setVisible(true);
}
UPD2: 我已经添加了此行的代码的末尾:
JOptionPane.showMessageDialog(null, new ImageIcon(img));
一切都很好与图像!它加载!但它不显示为图标。
代码在哪里,最好是'SSCCE'? – Reimeus 2013-03-19 13:05:27
请给出相应的代码部分。你是否引用图标的静态路径?编译后你的jar文件是你的图标吗? – Xavjer 2013-03-19 13:06:28
不需要任何代码,因为代码本身工作正常(该框架在NetBeans中有图标)。我怀疑,JRE有什么问题。 – Angstrem 2013-03-19 13:07:23