调用父类的paint()方法
想问一下
是不是学校作业
这两天好多这样的问题
有时你可以搜一下
说不定你的同学就问了同样的问题

解决方案 »

  1.   

    import javax.swing.*;  
    import java.awt.*;  
    import java.awt.event.*;  
    import javax.swing.event.*;public class MyPanel
    {
        public static void main(String[] args)
        {
            PanelFrame frm = new PanelFrame();
            frm.show();
        }
    }class PanelFrame extends JFrame
    {
        IconPanel cvs;
        public PanelFrame()
        {
            init();
        }
        public void init()
        {
            RepaintManager.currentManager(getRootPane()).setDoubleBufferingEnabled(false);
            setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            setSize(800,600);
            cvs = new IconPanel();
            cvs.setDebugGraphicsOptions(DebugGraphics.FLASH_OPTION); 
            cvs.setBounds(10,100,200,200);
            getContentPane().add("Center", cvs);
        }
    }class IconPanel extends JPanel
    {
        public IconPanel()
        {
            setBackground(new Color(128,128,192));
            add(new JButton("ok"));
        }
        public void paint(Graphics g)
        {
    //        super.paint(g);
            g.drawOval(50,50,32,32);
        }
    }
    这个例子很明显了  你可以试一试用和不用super.paint(g);的区别不就知道了