日期:2014-05-20  浏览次数:20818 次

重写paint()方法后Frame背景图片不显示
用JFrame做
Java code
URL url1 = urlload.findResource("Images/background.jpg");
    Image img1 = Toolkit.getDefaultToolkit().getImage(url1);
    backgroundLabel = new JLabel(new ImageIcon(img1));
    this.getLayeredPane().add(backgroundLabel, new Integer(Integer.MIN_VALUE));
    backgroundLabel.setBounds(0,0,800,600);
    ((JPanel)getContentPane()).setOpaque(false);
    setVisible(true);


上边代码能正常显示出背景图片来,但是我犹豫要画别的东西,启动repaint线程,重写了paint()方法,在paint()方法里面另外画了些图片啊之类的,可是我之前的背景图片没有了,请教需要改什么代码??

------解决方案--------------------
重写的时候在第一句加上super.paint()试下
------解决方案--------------------
探讨
重写的时候在第一句加上super.paint()试下

------解决方案--------------------
楼上正解!LZ好运!!
------解决方案--------------------
要调用super.paint()...
然后再做你的事情。
如:
Java code
public void paint(Graphics g){
   super.paint(g);
// do your thing....
}