日期:2014-05-20 浏览次数:20691 次
首先说下这几个控件的理解
TextBox是个类,属于基本屏幕,我们用的当然就是它的对象啦,它的对象就好比一个画布,我们把手机屏幕当作一个画板,我们在手机上添加我们需要的控件,像按钮像文本框,就像HTML一样,那么我们要把这些控件放在哪里呢?我们可以放在TextBox对象上,用到的语法是:TextBoxObject.addCommand(控件对象);就可以了。
然后把我们的画布TextBox放在画板上(手机当前屏幕),语法是Display.getDisplay(this).setCurrent(TextBox对象);
至于Command的用法很简单,声明一个对象就是一个按钮了,添加在画布上就可以了。以下给出代码和运行截图
import javax.microedition.midlet.MIDlet;
import javax.microedition.midlet.MIDletStateChangeException;
import javax.microedition.lcdui.*; //提供了一个命令类
public class MyTerry extends MIDlet implements CommandListener
//要处理按钮高级别事件。程序必须继承一个命令监听器接口类CommandListener类
{
private Command exitCommand;
private Command backCommand;
private Command screenCommand1;
private Command screenCommand2;
private TextBox tb;
public MyTerry()??? //类的构造函数
{
?? exitCommand =new Command("Exit",Command.EXIT,1);
?? backCommand = new Command("back",Command.BACK,2);
?? screenCommand1 = new Command("screen1",Command.SCREEN,1);
?? screenCommand2 =new Command("screen2",Command.SCREEN,1);
?? tb=new TextBox("Hello Terry","Hello Terry!",15,0);
?? tb.addCommand(backCommand);
?? tb.addCommand(exitCommand);
?? tb.addCommand(screenCommand1);
?? tb.addCommand(screenCommand2);//添加多几个按钮就有菜单效果
?? tb.setCommandListener(this);//添加一个按钮监听器,触发commandAction(Command c,Displayable d)
??
}
protected void startApp() throws MIDletStateChangeException //负责程序的初始化功能
{
??
?? Display.getDisplay(this).setCurrent(tb);
?? System.out.println("startMyfirstJ2ME");
}
protected void destroyApp(boolean arg0) throws MIDletStateChangeException //程序推出时调用的函数
{
?? System.out.println("玩完咯");
}
protected void pauseApp() //暂停状态时调用的函数
{
?? System.out.println("PauseApp");
}
public void commandAction(Command c,Displayable d)
{
?? if(c==exitCommand)
?? {
??? try{
???? destroyApp(false);
??? }
??? catch(MIDletStateChangeException exception)
??? {
???? System.out.println("出错啦傻B");
??? }
??? notifyDestroyed();
???
?? }
??
}
}