代码如下用的是JFrame   
(Image background)
public void paint(Graphics g){

if(background == null || background.getWidth(this) < 0 || 
background.getHeight(this) < 0){

background = getToolkit().getImage("images\\background.jpg");
g.drawImage(background, 0, 20, this);

}

}
测试中  在if语句中加System.out.print可以输出
背景加颜色也行,画线条之类的其他图形也行,就是图片有问题
求教~在线等~

解决方案 »

  1.   

    change 
    background = getToolkit().getImage("images\\background.jpg");
    to
        ......
        MediaTracker mt = new MediaTracker(this);
        background= Toolkit.getDefaultToolkit().getImage("images\\background.jpg");
        mt.addImage(background, 0);
        try {
          mt.waitForAll();
        } catch (InterruptedException e) {
          e.printStackTrace();
        }
        .........
    Hope it helps.//Ali
      

  2.   

    请教AliNaqvi,为什么我原来方法不行呢?那方法是我在书上和网上看到大部分都这样用的,请教一下,谢谢