如何让一个图像在applet上做匀速运动?(0分)

  • 主题发起人 主题发起人 鱼片干子
  • 开始时间 开始时间

鱼片干子

Unregistered / Unconfirmed
GUEST, unregistred user!
我的applet写在一个线程中,代码如下:
public class TetrisApp extends Applet implements Runnable
{ public void init()
{ String str;
str=getParameter("fpsconfig");
int fps=(str!=null)?Integer.parseInt(str):10;
pause=(fps>0)?(1000/fps):100;
....
}
public void run()
{ long startTime=System.currentTimeMillis();
while(Thread.currentThread()==engine)
{
repaint();
try
{ startTime+=pause;
Thread.sleep(Math.max(0,startTime-System.currentTimeMillis()));
}
catch (InterruptedException e)
{ break;
}
}

}
public void update(Graphics g)
{ .....
}
public void paint(Graphics g)
{ update(g);
}
}
但是动画显示的时候,时快时慢, 请大侠门帮我分析一下.......
小弟谢过了!
 
是不是你设置的动画时间太短啊。。比如还没有画完,这一帧的时间已经过去了?
 
首先使用双缓冲区,以为图片的显示需要时间。
而你的程序的间隔也太短了吧,按照一秒24个的速度就可以了,何必要那么快呢
再说JAVA本身的执行速度又不是很快了!!!!
 
接受答案了.
 
后退
顶部