开发工具:NetBeans
在src目录下有images文件夹
1.
Image image =Toolkit.getDefaultToolkit().getImage("json.jpg"); //好像不行
2.这个可以
java.net.URL imgURL = MainFrame.class.getResource("/images/icon.png");
ImageIcon imageIcon = new ImageIcon(imgURL);
用URL有一个好处,项目打成jar包后,仍能从jar包中取得图片,不存在路径问题
3.这个也可以,要加try catch
java.net.URL imgURL = MainFrame.class.getResource("/images/icon.png");
Image imgae = ImageIO.read(imgURL);
mainFrame.setIconImage(imgae);
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
// System.out.println(System.getProperty("user.dir"));
// System.out.println(MainFrame.class.getResource("icon.png").getPath());
// System.out.println(MainFrame.class.getProtectionDomain().getCodeSource().getLocation().getFile());
//new MainFrame().setVisible(true);
MainFrame mainFrame = new MainFrame();
//Image image =Toolkit.getDefaultToolkit().getImage("icon.png"); //不行
java.net.URL imgURL = MainFrame.class.getResource("/images/icon.png");
ImageIcon imageIcon = new ImageIcon(imgURL);
mainFrame.setIconImage(imageIcon.getImage());
// try {
// Image imgae = ImageIO.read(imgURL);
// mainFrame.setIconImage(imgae);
// } catch (IOException ex) {
// Logger.getLogger(MainFrame.class.getName()).log(Level.SEVERE, null, ex);
// }
mainFrame.setVisible(true);
}
});
参考:
jar包及jar包中图片加载
http://java.chinaitlab.com/base/761996.html
【解惑】深入jar包:从jar包中读取资源文件
http://hxraid.iteye.com/blog/483115