📄 commanddemo.java
字号:
/*
* CommandDemo.java
*
*/
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
/**
* 本程序演示了如何通过命令按钮在各个屏幕间切换.
* @author liu Bin
* @version
*/
public class CommandDemo extends MIDlet
implements CommandListener {
private Display display;
/** 退出命令按钮. */
private Command cmdExit;
/** 下一个命令按钮. */
private Command cmdNextWindow;
/** 上一个命令按钮. */
private Command cmdPrevWindow;
/** 第一个窗口 */
private TextBox tb1;
/** 第二个窗口 */
private TextBox tb2;
/** 第三个窗口 */
private TextBox tb3;
/** 第四个窗口 */
private TextBox tb4;
/** 第一个窗口中显示的文字 */
private static final String text1 =
"这是第一个窗口,单击“下一个”命令按钮跳转到第二个窗口;" +
"单击“上一个”命令按钮跳转到第四个窗口。" ;
/** 第二个窗口中显示的文字 */
private static final String text2 =
"这是第二个窗口,单击“下一个”命令按钮跳转到第三个窗口;" +
"单击“上一个”命令按钮跳转到第一个窗口。" ;
/** 第三个窗口中显示的文字 */
private static final String text3 =
"这是第三个窗口,单击“下一个”命令按钮跳转到第四个窗口;" +
"单击“上一个”命令按钮跳转到第二个窗口。" ;
/** 第四个窗口中显示的文字 */
private static final String text4 =
"这是第四个窗口,单击“下一个”命令按钮跳转到第一个窗口;" +
"单击“上一个”命令按钮跳转到第三个窗口。" ;
//定义TextBox数组
TextBox[] tbs;
//当前的窗口索引
int index;
//构造函数
public CommandDemo() {
//创建第一个窗口
tb1 = new TextBox("第一个窗口", //设置第一个窗口标题
text1, //设置第一个窗口内容
text1.length(), //设置最大字符数
TextField. ANY); //可以接受任何输入
//创建第二个窗口
tb2 = new TextBox("第二个窗口", //设置第二个窗口标题
text2, //设置第二个窗口内容
text2.length(), //设置最大字符数
TextField. ANY); //可以接受任何输入
//创建第三个窗口
tb3 = new TextBox("第三个窗口", //设置第三个窗口标题
text3, //设置第三个窗口内容
text3.length(), //设置最大字符数
TextField. ANY); //可以接受任何输入
//创建第四个窗口
tb4 = new TextBox("第四个窗口", //设置第四个窗口标题
text4, //设置第四个窗口内容
text4.length(), //设置最大字符数
TextField. ANY); //可以接受任何输入
cmdExit = new Command("Exit", Command.EXIT,1);
cmdPrevWindow = new Command("上一个", Command.SCREEN,2);
cmdNextWindow = new Command("下一个", Command.SCREEN,2);
//创建并初始化数组
tbs = new TextBox[4];
tbs[0] = tb1;
tbs[1] = tb2;
tbs[2] = tb3;
tbs[3] = tb4;
//设置命令按钮,并添加命令按钮事件监听
for (int i=0;i<4;i++) {
tbs[i].addCommand(cmdExit);
tbs[i].addCommand(cmdPrevWindow);
tbs[i].addCommand(cmdNextWindow);
tbs[i].setCommandListener(this);
}
}
public void startApp() {
display = Display.getDisplay(this);
display.setCurrent(tb1);
index = 0;
}
public void pauseApp() {
}
public void destroyApp(boolean unconditional) {
notifyDestroyed();
}
/**
* 处理命令按钮事件
*/
public void commandAction(Command cmd, Displayable d) {
if (cmd == cmdExit) {
destroyApp(true);
} else if (cmd == cmdNextWindow) {
display.setCurrent(tbs[index++]);
if (index>=4) {
index = 0;
}
} else if (cmd == cmdPrevWindow) {
display.setCurrent(tbs[index--]);
if (index<0) {
index = 3;
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -