一个j2me的小问题,多给分

wangloveyang 2009-03-13 03:25:53
package org.javame.chapter7;

import javax.microedition.lcdui.Canvas;
import javax.microedition.lcdui.Display;
import javax.microedition.lcdui.Graphics;
import javax.microedition.lcdui.Image;
import javax.microedition.midlet.MIDlet;
import javax.microedition.midlet.MIDletStateChangeException;

public class ThreadAnimation extends MIDlet {
Display dis;
ThreadAnimationCanvas tac=new ThreadAnimationCanvas();

public ThreadAnimation() {

}

protected void destroyApp(boolean arg0) throws MIDletStateChangeException {
// TODO Auto-generated method stub

}

protected void pauseApp() {
// TODO Auto-generated method stub

}

protected void startApp() throws MIDletStateChangeException {
dis=Display.getDisplay(this);
dis.setCurrent(tac);
}

class ThreadAnimationCanvas extends Canvas implements Runnable{
boolean stopFlag=false;

private int canW,canH;

private static final int LEN=8;

private int curIndex=0;

private Image[] imgList;
public ThreadAnimationCanvas(){
try{
imgList=new Image[LEN];
for(int i=0;i<LEN;i++){
imgList[i]=Image.createImage("/image"+i+".jpg");
System.out.println("image"+i+".jpg has been loaded");
}
}catch(Exception e){
System.out.println("Can not load images:"+e);
}
canW=this.getWidth();
canH=this.getHeight();
System.out.println("canvas width is "+canW);
System.out.println("canvas height is "+canH);

new Thread(this).start();
}
public void run(){
while(!stopFlag){
curIndex++;
if(curIndex==LEN-1){ //请问这个if语句什么意思
curIndex=-2;
}
try{
repaint();
Thread.sleep(100);
}catch(Exception e){}
}
}

public void paint(Graphics g){
g.setColor(0x000000);
g.fillRect(0, 0, this.getWidth(), this.getHeight());

int w,h,x,y;
if(curIndex>=0 && imgList[curIndex]!=null){
w=imgList[curIndex].getWidth();
h=imgList[curIndex].getHeight();
x=(canW-w)/2;
y=(canH-h)/2;
g.drawImage(imgList[curIndex], x, y, Graphics.LEFT|Graphics.TOP);
}
}
}
}
...全文
103 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
kf156 2009-03-13
  • 打赏
  • 举报
回复
来迟了,楼上正解
yanhan0615 2009-03-13
  • 打赏
  • 举报
回复
相当于循环放一个动画嘛,但是动画前两帧是空

13,099

社区成员

发帖
与我相关
我的任务
社区描述
Java J2ME
社区管理员
  • J2ME社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧