以下是部份源碼:
當(dāng)鼠標(biāo)單擊panel的時(shí)候,就會(huì)調(diào)用add方法,Panel面板上立刻出現(xiàn)了一個(gè)小方塊。當(dāng)鼠標(biāo)在小方塊上雙擊的時(shí)候,就會(huì)調(diào)用remove方法,但是Panel面板上的小方塊并不能立刻消失,必須將整個(gè)面板最小化,或者改變面板大小的時(shí)候,面板上的小方塊才會(huì)消失。也就是說,remove方法中repaint()并沒有立刻生效。
然而把 super.paintComponent(g)前的//去掉之后不管是add或remove中調(diào)用repaint()都立刻生效。
JComponent中的paintComponent方法:
是什么原因?qū)е聢?zhí)行了上面一段代碼之后,面板就可以立即更新了呢?難道跟dispose釋放資源有關(guān)?
好好活著,因?yàn)槲覀儠?huì)死的很久!