日期:2014-05-20  浏览次数:20689 次

在jpanel上画图出现闪现的情况
Photomosaic 是一个Jpanel的实例,大小设置为固定的,现在读取一张图片画在photomosaic上,因为读取的图片可能比photomosaic大,所以对photomosaic大小进行调整,然后画上去,可是出现了闪现的情况,图片闪一下就消失了,我看了一下,如果把photomosaic设置得足够大不调整大小的话,直接可以画上去,请大神们帮忙看一下
------解决方案--------------------
你可以试试把你的图片对象先传入双缓冲画布里去,然后再显示的话就不会有闪现效果了吧?
------解决方案--------------------
引用:
Quote: 引用:

你可以试试把你的图片对象先传入双缓冲画布里去,然后再显示的话就不会有闪现效果了吧?

花了半天搞懂什么事双缓冲技术,并且调试成功,但是发现了一个问题,我新写了一个类ImagePanel 重写了Jpanel的paint 和update函数,声明一个ImagePanel实例Photomosaic,发现这样就不能在frame上画出,但是闪现的图像可以正常画出来,photomosaic
我后来把重写paint函数改成重写paintCompnent可以把photomosaic画在frame上,闪现的图像也能正常画出,能解释一下原因么?
 因为JPanel与awt不同,本身就是双缓冲的