儿科问题,关于一段代码,不是很懂,请帮我解释一下

yexing yexing 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
不太明白为什么支持双缓冲还要用buffer,那不支持双缓冲不是要把屏幕清空了,因为buffer就是白的

public void paint (Graphics g)
{
drawAnimation(g);
}

private void drawAnimation(Graphics gr)
{
Graphics g=gr;
if(this.isDoubleBuffered())
{
g=graphics;//buffer是一个Image(缓冲),graphics是由buffer.getGrahpics()得到的
}

try
{
myBackground.draw(g);
myBackground.setPosition();
myMovingObject.setFrame();
myMovingObject.draw(g);
gr.drawImage(buffer,0,0,g.TOP|g.LEFT);//就是这个buffer

}
catch(Exception e)
{
System.out.println("drawAnimation Error: "+e.toString());
}
}
...全文
评论 11
收藏 已收藏
分享
返回顶部
yexing
J2ME 13,096 成员 26,491 内容