J2ME无线设备编程入门(二)--原创

发表于:2007-07-04来源:作者:点击数: 标签:
下面就开始建立我们的第一个J2ME工程: 点击“New Project”菜单,在“New Project”窗体中输入“Project name”(这儿输入mypro),在 MI Dlet class name中输入类名(一般是MIDlet类的名字,就是下面要建主类的名字,我们这儿设为 mymidlet).如图(2)所示
下面就开始建立我们的第一个J2ME工程:
点击“New Project”菜单,在“New Project”窗体中输入“Project name”(这儿输入mypro),在"MIDlet class name"中输入类名(一般是MIDlet类的名字,就是下面要建主类的名字,我们这儿设为 mymidlet).如图(2)所示:按“Create Object”结束。这进在你的J2ME Wireless Toolkit 1.0.3的安装路径下\J2mewtk\apps多了一个文件夹mypro.
  工程已经建立完成,下面开始程序的编写:
1./**package example;*/
2.import javax.microedition.midlet.*;
3.import javax.microedition.lcdui.*;
4.public class mymidlet extends MIDlet implements CommandListener{
5.  private Command exitcommand;
6. private TextBox tb;
7. public mymidlet(){
8.   exitcommand=new Command("exit",Command.EXIT,1);
9.   tb=new TextBox("hello","hello,你好!",15,0);
10.   tb.addCommand(exitcommand);
11.   tb.setCommandListener(this);
12. }
13. protected void startApp(){
14.   Display.getDisplay(this).setCurrent(tb);
15. }
16. protected void pauseApp(){}
17. protected void destroyApp(boolean u){}
18. public void commandAction(Command c,Displayable d){
19.    if(c==exitcommand){
20.        destroyApp(false);
21.     notifyDestroyed();
22.    }
23. }
24.}
将这段程序保存为mymidlet.java,并存入\J2mewtk\apps\mypro\src\
在J2ME Wireless Toolkit 1.0.3上点击“Build”出现程序成功信息,然后点击“Run”,你就可以在手机的虚拟机上看到这段程序的效果了(其中生成的CLASS文件在入\J2mewtk\apps\mypro\class\
)。其中有一个“Device”里面共有6种模型机,你可以选择不同的机子作为模拟机。
下面对程序的解释:
1.这里这句话作为解释,如果要作为程序的一部份,在J2ME Wireless Toolkit 1.0.3上的“Setting”里“MIDlets”中点击“EDIT”在出现窗体中的“CLASS”中输入“example.mymidlet”,然后将你所写的JAVA程序存入\J2mewtk\apps\mypro\src\example\其它同上,只是生成的CLASS文件在入\J2mewtk\apps\mypro\class\example\。
2.插入相应该的类,具体类可以在\J2mewtk\docs\api下查看。CLDC的核心库还有java.lang.*;java.io.*;java.util.*;
6.是J2ME中包含一个textbox类的SCREEN类,其它还有如:list,ticket...具体可以参考相关材料。
13.startApp一般用来启动或者重新启动一个MIDlet。这个方法可以被系统在任何情况下调用 ,其目的是请求或者重新请求MIDlet需要的资源并且准备MIDlet来处理事件。不过startApp可以被多次启动。具体如下:
startApp()<-->pauseApp()-->destroyApp()
startApp()-->destroyApp()


14.设置当前SCREEN所画为tb;
16.pauseApp方法被 系统调用来要求一个MIDlet"pause",如接电话等。pauseApp 和startApp结合使用一般可以释放尽可能多的资源。
17.destroyApp方法都要编写用来执行所有必要的清理工作从而释放应用在运行过程中分配的所有资源(如:关闭图形,用户界面组件、网络连接、数据库记录等)。
总结
这样可以说完成了一个J2ME的完整的工程,虽然量不大,但却体现的J2ME无线设备编程的一个完整的过程。由于这儿主要介绍一点初级的无线设备编程的基础,所以不可能讲太详细,如果对此有兴趣或者想知道更多,可以查找相关资料,也可以去SUN的主页查看。

原文转自:http://www.ltesting.net