如何在我的applet中停止缓冲(闪烁)

时间:2012-05-15 09:10:09

标签: java graphics japplet

我正在用java applet制作纸牌游戏。我有一个扩展JApplet的类。现在我试图在applet上绘制104个图像,但是当我拖动一个图像并移动时,我的整个applet都在闪烁。在我的程序执行期间,我在mousedragged和mousepressed中调用repaint方法,因为在拖动它之后需要在applet上重新绘制图像。

我知道每次拖动卡片并将鼠标移动到屏幕上时我的绘制方法都在运行,这就是为什么我的104张卡片每次重绘applet的原因。我认为这是我的小程序中闪烁的原因。

我已多次尝试但未解决。如何防止这种眨眼?

1 个答案:

答案 0 :(得分:5)

查看双缓冲和BufferStrategy

曾几何时你可以通过绘制到屏幕外的图像来自己完成,然后一次性将屏幕外图像绘制到applet中 - 但是现在你可以使用BufferStrategy了。这是一个tutorial on how to do it the old fashioned way。 BufferStrategy javadoc向您展示了如何使用新方法。

相关问题