一、问题
ImageIcon icon = new ImageIcon("pic.jpg");
执行结果是icon无法显示
二、解决
类中有如下调用:
ImageIcon icon = new ImageIcon("pic.jpg");
很自然地认为当前类文件和图片在同一路径下即可。
其实所谓的相对路径起点是工程的根目录,即project。
这行代码执行时在project目录下查找名为pic.jpg的文件,结果当然是找不到。
假如你的工程根目录为:project1
你的图片文件放在:project1/src/images/pic.jpg
所以正确的调用是:
ImageIcon icon = new ImageIcon("src/images/pic.jpg");
这行代码执行时在project目录下查找到了文件,当然也可以写成
ImageIcon icon = new ImageIcon("./src/images/pic.jpg");
注意两者的区别,要记住的是src