如何将wall1.jpg
设置为我的JFrame
或JPanel
的背景?如何在我的JPanel或JFrame中设置背景图标?
public class JBackGroundImageClass extends JFrame
{
Image img;
private final JPanel JPanel;
public JBackGroundImageClass()
{
setLayout (new BorderLayout());
setBounds(22,33,400, 400);
setVisible(true);
img = Toolkit.getDefaultToolkit().createImage("wall1.jpg");
JPanel = new JPanel()
{
public void paintComponent(Graphics g)
{img = Toolkit.getDefaultToolkit().createImage("wall1.jpg");
g.drawImage(img, 0, 0, null);
}
};
this.add("North" , JPanel);
JPanel.setSize(400, 400);
JPanel.setBackground(Color.red);
JPanel.setVisible(true);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public static void main(String[] args)
{
new JBackGroundImageClass().setVisible(true);
}
}
“ Swing程序应该重写'的paintComponent()',而不是覆盖'的paint()'” - [在AWT和Swing中绘制:绘制方法](http://java.sun.com/products/jfc/tsc/articles/painting/index.html#callbacks)。 – trashgod
@trashgod:我重试了,但仍然一样。 – YumYumYum
检查在这篇文章中接受的答案。我以前使用过相同链接的代码,它的工作原理如下:http://stackoverflow.com/questions/4051408/jpanel-with-image-background –