在简单的Java游戏中设置背景图像

时间:2012-05-29 17:51:32

标签: java image background

我正在制作我的第一款简单游戏,它看起来像太空侵略者。

我已经使用油漆在我的JPanel上绘制我的英雄。现在我想如果可以用简单的方法在我的JPanel上添加背景图像。

ImageIcon img = new ImageIcon(this.getClass().getResource("back.gif"));
Image image = img.getImage();
setDoubleBuffered(true);    
hero = new Hero("hbarrel.gif",350,500); 

public void paint(Graphics g) {
    super.paint(g);
    Graphics2D g2d = (Graphics2D)g;
    g2d.drawImage(hero.getImage(), hero.getX(), hero.getY(), this);
    g2d.drawImage(image,0,0,this);
    // Toolkit.getDefaultToolkit().sync();
    g.dispose();
}

所以,就是这样:我尝试使用我的背景img作为英雄img,它有效!但是当我使用上面的代码时,它只会描绘我的英雄img ....所以它不是资源位置问题。

2 个答案:

答案 0 :(得分:3)

覆盖paintComponent(Graphics)方法并使用Graphics.drawImage()在您自己的自定义组件中执行此操作。

答案 1 :(得分:0)

好吧,首先尝试绘制背景图像,然后再绘制英雄,以便在背景图像上方拥有英雄