【发布时间】:2015-12-31 03:39:02
【问题描述】:
我想知道在我的情况下最有效的重绘方法是什么,以及如何去做。
我有一个JFrame,其中包含一个JPanel。这个JPanel 包含一些 AWT 图形。其中一些图形是固定的,它们不会移动。此面板中的其他一些图形(在固定图形之上)确实会移动。布局每 3 秒更新一次。固定的图形需要相当多的数学才能绘制,所以我可能不想重新绘制所有图形,而只想重新绘制移动的图形。
这是我想出的可能性:
- 将固定图形和移动图形放在两个单独的面板中,并且只重绘一个面板,它们相互重叠。
- 将两个不同的
Graphics对象添加到面板(一个用于固定图形,一个用于移动),并且只重绘一个图形对象。 (这甚至可能吗?) - 也许我不知道其他方式?
【问题讨论】:
-
“固定的图形需要一些安静的数学来绘制..” 将它们绘制到
BufferedImage并首先绘制图像。 -
@AndrewThompson 那我还是每次都要重绘 BufferedImage 吧?
标签: java swing graphics awt repaint