我现在花了将近2个小时,但我无法让它发挥作用。 我只是想在 JPanel 上绘制图像。
我想在竞技场JPanel上绘制imageChaser
图像。
但它没有显示。
我做错了什么?
继承我的代码:
public class GuiGameBoard extends JPanel {
//import stuff
private JPanel arena;
BufferedImage imageChaser;
BufferedImage imageChaserSelected;
BufferedImage imageTarget;
public GuiGameBoard() {
this.setLayout(new BoxLayout(this, BoxLayout.Y_AXIS));
arena = new JPanel();
arena.setPreferredSize(new Dimension(500, 500));
arena.setBackground(Color.BLACK);
this.add(arena);
try
{
File inputChaser = new File("resources\\chaser.png");
imageChaser = ImageIO.read(inputChaser);
File inputChaserSelected = new File("resources\\chaser_selected.png");
imageChaserSelected = ImageIO.read(inputChaserSelected);
File inputTarget = new File("resources\\target.png");
imageTarget = ImageIO.read(inputTarget);
}
catch (IOException ie)
{
System.out.println("Error:"+ie.getMessage());
}
}
public void paintComponent(Graphics g){
super.paintComponent(g);
g.drawImage(imageChaser, 0, 0, null);
}
}
答案 0 :(得分:3)
我认为问题是,通过将JPanel arena
添加到您的GuiGameBoard类(已经是JPanel)来隐藏您的图片。
但如果没有SSCCE,就不可能给出足够的答案......
答案 1 :(得分:1)