我想在我的applet中显示一个图像图标。我创建了一个包资源并将我的图像保存在其中。这就是我尝试过的: -
Image logo;//I declare globally
logo = getImage("logo.jpg");//I initialize in the constructor
我使用此操作
public Image getImage(String name){
URL imgUrl = getClass().getClassLoader().getResource("resources/"+name);
ImageIcon icon = new ImageIcon(imgUrl);
return icon.getImage();
}
public void paint(Graphics g)
{
if (logo!=null){
g.drawImage(logo, 30, 30, null);
}
g.drawString("Hwllo", 12, 12);
}
然后我打电话给:
repaint() //In the Constructor
但是我没有看到图像或我的字符串。问题可能是什么。而且还有更简单的方法在Applet中加载图像吗?
答案 0 :(得分:0)
您将网址设置为
URL imgUrl = getClass().getClassLoader().getResource("resources/"+name);
ImageIcon icon = new ImageIcon(imgUrl);
但是在调用paint方法时,您调用了logo变量
g.drawImage(logo, 30, 30, this);
问题在于您的设置网址值,将网址设置为徽标变量,如
URL url = new URL(/*Your resources herre*/, /*Your file name here*/);
logo=getImage(url);
使用paint方法显示图像之后。