闪烁的原因是因为调用repaint()的时候,他总是先清除屏幕引起的。
用双面缓冲技术就可以很好的解决动画问题。
先建立一个草稿板,在草稿板上画好,再把草稿板作为一个Image对象添加到屏幕上public void init()
{
workspace=createImage(size().width,size().height);//初始化一个工作区
offscreen=workspace.getGraphics();//把工作区与做图工具建立联系
}
public void paint(Graphics screen)
{
offscreen.drawRect(.....);在工作区画一个方块
screen.drawImage(workspace,0,0,this);把工作区放在屏幕的(0,0)处
}
public void update(Graphics screen)
{
paint(screen);//解决了闪烁问题。
}别忘记给分,:)
用双面缓冲技术就可以很好的解决动画问题。
先建立一个草稿板,在草稿板上画好,再把草稿板作为一个Image对象添加到屏幕上public void init()
{
workspace=createImage(size().width,size().height);//初始化一个工作区
offscreen=workspace.getGraphics();//把工作区与做图工具建立联系
}
public void paint(Graphics screen)
{
offscreen.drawRect(.....);在工作区画一个方块
screen.drawImage(workspace,0,0,this);把工作区放在屏幕的(0,0)处
}
public void update(Graphics screen)
{
paint(screen);//解决了闪烁问题。
}别忘记给分,:)
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货