我在PANEL上画了个圆,但当对话框遮盖后,这个圆随对话框一起消失.为什么?怎样避免?
请指教!

解决方案 »

  1.   

    这是因为你画图的代码不是在paint()方法里写的,所以每次Panel重绘的时候并不调用你的画图的代码,所以你可以把绘图的代码放在paintComponent()这样重绘时被调用的方法中。
      

  2.   

    添加一个repaint()方法
    应该没有问题!
      

  3.   

    同意zjg_robin()讲的
    你的圆只绘制了一帧,当窗口重绘的时候并没有执行你画圆的代码,自然圆就没有了,你需要重载PANEL的 
    public void paintComponent(Graphics g){
    }
    然后把画圆的CODE写在这里面,这样就没问题了,因为在重绘的时候,你的圆会自动重画一遍。