我试图设置JPanel女巫的背景图像位于JFrame内部。我尝试了很多东西,比如把一个带有IconImage的JLable放进去,我试过覆盖paintComponent类。
for(int i = 0; i<4; i++){
JPanel panel = new JPanel();
panel.setPreferredSize(new Dimension(450,125));
ImageIcon icon = new ImageIcon(image);
panel.repaint();
left.add(panel);
left.revalidate();
repaint();
}
}
public void paintComponent(Graphics g){
super.paintComponents(g);
g.drawImage(backgroundImage, 0, 0, this);
}
答案 0 :(得分:2)
您的问题仍然在细节方面仍然存在,您仍然没有发布实际的runnable example that demonstrates your problem,但是您的帖子:
所以我试图将一个图像作为JLabel的背景。我尝试过使用:
public void paintComponent(Graphics g){ super.paintComponent(g); }
但是super.paintComponent(g)部分似乎给出了错误。
建议此代码不要放在扩展JPanel或JComponent的类中。
建议:
@Override
注释,以确保您实际上正确地覆盖了该方法。g.drawImage(...)
。paintComponent(Graphics g)
方法应声明为protected
而不是public
。