如何消除java屏幕闪烁

publicvoidpaint(Graphicsg){super.paint(g);BufferedImageimage=null;if(image==null){ima... public void paint(Graphics g) {
super.paint(g);
BufferedImage image = null;
if(image == null) {
image = new BufferedImage(900,600,BufferedImage.TYPE_3BYTE_BGR);
}
Graphics g2 = image.getGraphics();
g2.drawImage(this.thisBackGround.getBgImage(), 0, 0, this);
g2.dispose();
//把缓冲区图片画到窗体上
g.drawImage(image, 0, 0, this);
}

public void update(Graphics g) {
this.paint(g);
}

public void run() {
while(true) {
this.repaint();
try {
Thread.sleep(50);
} catch (InterruptedException e) {
e.printStackTrace();
}
}

}

上面的代码测试后屏幕闪得好害,请问问题出在哪儿?高手帮忙解决一下
问题解决了,只需要去掉paint方法里的super.paint(g)语句即可,原因是paint方法是完全复写父类的方法,所以不需要再调用父类方法,内部原理有待进一步研究,谢谢hohahevivi,谢谢各位的答案!
展开
 我来答
陈学阳
2010-10-13 · TA获得超过2.8万个赞
知道大有可为答主
回答量:2.1万
采纳率:14%
帮助的人:5580万
展开全部
楼主可以把图片放在“有照片”相册里,然后修改它们的链接地址,再上传就行了

如果对您有帮助,请记得采纳为满意答案,谢谢!祝您生活愉快!

vaela
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
hohahevivi
2010-10-11 · TA获得超过139个赞
知道答主
回答量:238
采纳率:0%
帮助的人:0
展开全部
改用蒙板动画试试
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
sys_xjiang
2010-10-11 · TA获得超过874个赞
知道答主
回答量:165
采纳率:0%
帮助的人:124万
展开全部
thread.sleep(50);
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式