import java.awt.*;
import java.applet.*;
public class showPicture extends Applet
{ Image pic1,pic2;
  public void init()
{ resize(400,200);
  pic1=getImage(getCodeBase(),"littledog.jpeg");
  pic2=getImage(getCodeBase(),"cute dog.jpeg");
}
public void paint(Graphics g)
{ int h=pic1.getHeight(this);
  int w=pic1.getWidth(this);
  g.drawString("按原尺寸显示",10,15);
  g.drawImage(pic1,10,30,w,h,this);
  g.drawString("缩小一倍显示",110,15);
  g.drawImage(pic1,100,30,w/2,h/2,this);
  g.drawString("按原尺寸显示",200,15);
  g.drawImage(pic2,200,30,pic2.getHeight(this),pic2.getWidth(this),this);
}
}
编译过了,但是最后不能显示图像文件,是什么原因呢,请指教

解决方案 »

  1.   

    刚才帮你的测试了可以的关键是:楼主有没有把那个CLASS文件和图片文件放在一块??用JBuild时  .JAVA文件和.class不在一个文件夹下
    所以应该把图片和.class放一起
      

  2.   

    一楼的说得对!我刚才测试的时候是把图片和class放在一起的!若是不在一起就得在pic1=getImage(getCodeBase(),"littledog.jpeg");这一句加上路径!它默认是在同一路径下!
      

  3.   

    如果是和class文件放在一起,则用
     pic1=getImage(getCodeBase(),"littledog.jpeg");
    如果是和html文件放在一起,则用
     pic1=getImage(getDocumentBase(),"littledog.jpeg");
      

  4.   

    放在一起是一方面,而最大的原因 是因为drawImage()方法是一个异步方法,当图片有可能还没有加载进来的时候己经返回了,所以你应该这么写
    while(!g.drawImage(pic2,200,30,pic2.getHeight(this),pic2.getWidth(this),this) ;