从服务器运行小程序时,无法通过绝对本地文件路径引用映像。
使用ImageIcon(URL位置)构造
函数,
并使URL指向服务器上的图像资源。使用JApplet.getCodeBase()确定小程序的起源,并在其后附加文件名。
public class Form1 extends JApplet {
Image i;
public void init() {
try {
i = ImageIO.read(new URL(getCodeBase(), "test.bmp"));
} catch (MalformedURLException ex) {
ex.printStackTrace();
} catch (IOException ex) {
ex.printStackTrace();
}
}
public void paint(Graphics g) {
g.drawImage(i, 0, 0, null);
}
}
如果仍然不显示图像,请尝试“ ../test.bmp”,因为从Eclipse运行小程序时,它具有bin
目录作为代码库。
如果将test.bmp放到jar或类路径中,则可以使用相同的方式加载它,但要替换
new URL(getCodeBase(), "test.bmp")
与
Form1.class.getResource("test.bmp")