以下是部份源码:
当鼠标单击panel的时候,就会调用add方法,Panel面板上立刻出现了一个小方块。当鼠标在小方块上双击的时候,就会调用remove方法,但是Panel面板上的小方块并不能立刻消失,必须将整个面板最小化,或者改变面板大小的时候,面板上的小方块才会消失。也就是说,remove方法中repaint()并没有立刻生效。
然而把 super.paintComponent(g)前的//去掉之后不管是add或remove中调用repaint()都立刻生效。
JComponent中的paintComponent方法:
是什么原因导致执行了上面一段代码之后,面板就可以立即更新了呢?难道跟dispose释放资源有关?
好好活着,因为我们会死的很久!