我们由一个程序来看看MIDlet程序的生命周期及结构。下面这个程序是一个用户注册界面
- package cn.ibm;
- import javax.microedition.midlet.MIDlet;
- import javax.microedition.lcdui.*;
- import javax.microedition.midlet.MIDletStateChangeException;
- public class TextFieldDemo extends MIDlet implements CommandListener{
- private Display display;//定义显示类
- private Form form;//定义一个Form对象
- private Command submit;//定义按钮类
- private Command exit;
- //定义4个TextField类对象。
- private TextField name,address,email,telphone;
- private StringItem str;
- /**
- *默认构造器,完成初始化操作。
- */
- public TextFieldDemo() {
- //获得显示类的实例,即本类自身。
- display = Display.getDisplay(this);
- //以下在一些实例化类对象在J2EE中大家都应该明白在。
- submit = new Command("提交",Command.SCREEN,1);
- exit = new Command("退出",Command.EXIT,2);
- name = new TextField("姓名","",30,TextField.ANY);
- address = new TextField("地址","",30,TextField.ANY);
- email = new TextField("邮箱","",30,TextField.EMAILADDR);
- telphone = new TextField("电话","",30,TextField.PHONENUMBER);
- form = new Form("联系人信心管理");
- //将实例化后的一些类对象添加到form表单上。
- form.addCommand(submit);
- form.addCommand(exit);
- form.append(name);
- form.append(address);
- form.append(email);
- form.append(telphone);
- //向表单注册监听器,其他在组件是一样在操作..
- form.setCommandListener(this);
- }
- protected void destroyApp(boolean arg0) throws MIDletStateChangeException {//程序进入销毁状态
- }
- protected void pauseApp() {//程序进入暂停状态
- }
- protected void startApp() throws MIDletStateChangeException {
- //程序进入活动状态。
- //将form设为显示的对象。
- display.setCurrent(form);
- }
- /**
- * 这个函数是完成事件处理在方法,比如在按钮按下在时候所要做在事情。
- */
- public void commandAction(Command cmd, Displayable dis) {
- if(cmd == submit){
- str = new StringItem("","信息已经正确保存");
- for(int i=0;i<4;i++)
- form.delete(0);
- form.removeCommand(submit);
- form.append(str);
- }
- if(cmd == exit){
- try {
- destroyApp(false);//收回资源,程序销毁
- } catch (MIDletStateChangeException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- notifyDestroyed();//强制销毁程序资源。
- }
- }
- }
文章来自永磁起重器:http://www.shqzjx.com