2012-05-15 39 views
0

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

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

我已经尝试了很多次,但没有解决。我怎样才能防止这种闪烁?

+0

你的问题是回答?如果是这样,你应该[接受答案](http://meta.stackexchange.com/a/5235)。 –

回答

5

调查双缓冲和BufferStrategy

曾几何时你会做自己的绘画到屏幕外图像,则屏幕外图像绘制你的小程序在一个单一的去 - 但这些日子里,你可以使用BufferStrategy中。这是tutorial on how to do it the old fashioned way。 BufferStrategy javadoc向您展示了如何使用新的方式。

+0

感谢您的快速回复,我已经使用了BufferStrategy中,现在70%的解决我的问题。非常感谢 – Gopal