我正在制作我的第一款简单游戏,它看起来像太空侵略者。
我已经使用油漆在我的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 ....所以它不是资源位置问题。
答案 0 :(得分:3)
覆盖paintComponent(Graphics)
方法并使用Graphics.drawImage()
在您自己的自定义组件中执行此操作。
答案 1 :(得分:0)
好吧,首先尝试绘制背景图像,然后再绘制英雄,以便在背景图像上方拥有英雄