日期:2014-05-20  浏览次数:20691 次

J2ME学习笔记 :按钮Command 屏幕控件TextBox的用法(原创)

首先说下这几个控件的理解

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();
???
?? }

??
}

}

1 楼 一点寒意 2011-02-24  
怎么在屏幕上画一个Image图片,然后在图片上添加 TextBox或者 TextField等?
请联系我:yidianhanyi@qq.com
2 楼 ml365 2011-02-25  
一点寒意 写道
怎么在屏幕上画一个Image图片,然后在图片上添加 TextBox或者 TextField等?
请联系我:yidianhanyi@qq.com

这个好久没研究了哦。我大三时候研究J2ME的。有空我再看看,看能不能帮到你吧~呵呵~
3 楼 一点寒意 2011-03-03  
呵呵 已经解决了,很简单,就是用Canvas画个图片,然后在图片上画个文本框,监听响应的事件就好了