J2ME主框架介绍

来源:百度知道 编辑:UC知道 时间:2024/06/23 00:38:33
希望大虾们给个介绍,J2ME的主框架 例如:
import javax.microedition.lcdui.*;
import javax.microedition.midlet.*;

public class StarDemo extends MIDlet
{
private MyCanvas canvas;
public StarDemo() {

}
protected void startApp( ) throws MIDletStateChangeException
{
canvas=new MyCanvas(this); //创建MyCanvas屏幕画布
Display.getDisplay(this).setCurrent(canvas);//显示该画布
canvas.start();//开始游戏线程
}
protected void pauseApp( ) {
canvas.stop();//停止线程
}
protected void destroyApp( boolean unconditional ) {
canvas.stop();//停止线程
}
public void exitMidlet()
{
destroyApp(false);
notifyDestroyed();
}
}
有些细节的不太明白,希望给出详细的介绍,谢谢!

这个里面MIDlet创建了一个画布mycanvas
画布里启动一个线程作为主线程
就是canvas里的start()
在这里new Thread(this).start
启动一个线程
同时mycanvas必须 implements Runnable
然后实现run()方法作为程序的主循环
在run()方法里 写

while(isGame){
long oldTime = Runtime.getCurrentTime();
dologic();
repaint();
serviceRepaints();
while(Runtime.getCurrentTime()- oldTime < 60){}
}
exitMidlet();
}
dologic执行逻辑
repiant()调用paint()方法绘制
看看下面这个:
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;

public class GameActionTest extends MIDlet {
private Display display;

public GameActionTest() {
display=Display.getDisplay(this); // 获得主窗体
}

public void startApp() throws MIDletStateChangeException {
display.setCurrent(new GameActionTestCanvas());//设置窗体画布
}
public void pauseApp() { }
public void destroyApp(boolean unconditional) { }

class GameAct