我有一个 JPanel,其中包含很多子组件。在向父 JPanel 更新\添加新组件时,我想防止它重新绘制,这如何实现?
问问题
10647 次
3 回答
8
尝试RepaintManager.currentManager(component).markCompletelyClean(component)。它将防止组件重新绘制。您可能需要在每次添加新组件后执行此操作。
于 2010-11-01T03:14:55.257 回答
2
setVisible(false)
更新
setVisible(true)
于 2012-01-27T05:03:44.177 回答
1
您可以尝试使用setIgnoreRepaint(boolean value)
,但它是一个典型的摆动功能,可以工作也可以不工作(主要是因为它依赖于 AWT,所以你永远不知道)。
否则,您可以paint
通过使用仅使方法返回而不调用的标志来覆盖该方法super.paint()
。(实际上覆盖paintComponent
应该是正确的选择)
于 2010-10-31T22:34:31.717 回答