首先你需要知道的是,如果你是在一个swing组件上作图的画,swing已经自动的为你
实现了双缓冲,因此没有必要在这个问题上上脑筋了。//感谢上帝
如果你使用的是awt组件的话,你可以根据下面的流程使用双缓冲:
利用该组件之createimage()方法创建一个bufferedimage对象
利用bufferedimage的creategraphics()方法得到适当的graphics对象
在得到的graphics对象上作图
将做出的图形显示到该组件之graphics对象上。
下面的代码片断实现了上述流程,其中g 是图形显示组件之graphics对象。
bufferedimage bi = (bufferedimage)createimage(w, h);
graphics big = bi.creategraphics();
// draw somthing
g.drawimage(bi, 0, 0, this);
关于双缓冲技术的详细内容,可以参考java tutorial中的2d graphics。
闽公网安备 35060202000074号