📄 commanddemo.java
字号:
import javax.microedition.midlet.MIDlet;
import javax.microedition.lcdui.*;
public class CommandDemo extends MIDlet implements CommandListener
{
private Display display;
private TextBox textBox;
private List list;
//定义程序中使用的命令
private final static Command exit = new Command("Exit", Command.EXIT, 1);
private final static Command back = new Command("Back", Command.BACK, 1);
private final static Command ok = new Command("OK", Command.OK, 1);
public CommandDemo(){
//创建含有4个选项的List
String[] options = {
"Option A",
"Option B",
"Option C",
"Option D"
};
list = new List("Exclusive", Choice.EXCLUSIVE, options, null);
//向List中添加2个命令
list.addCommand(exit);
list.addCommand(ok);
//设置List的命令监听器
list.setCommandListener(this);
//创建TextBox,用于显示用户选择的信息
textBox = new TextBox("Selected","",256,0);
//向textBox中添加3个命令
textBox.addCommand(exit);
textBox.addCommand(back);
textBox.addCommand(ok);
//设置TextBox的命令监听器
textBox.setCommandListener(this);
}
public void startApp(){
//程序刚运行时,显示List屏幕
display=Display.getDisplay(this);
display.setCurrent(list);
}
public void pauseApp(){
}
public void destroyApp(boolean unconditional){
}
public void commandAction(Command c, Displayable d){
//如果是exit命令,则退出程序
if(c == exit){
destroyApp(false);
notifyDestroyed();
}
//如果是back命令,则把List屏幕设置为当前显示的界面
else if(c == back){
display.setCurrent(list);
}
//如果是ok命令,分2种情况处理
else if(c == ok){
//若该命令由List屏幕发出,则使用textBox屏幕显示用户在List中选择的选项
if(d == list){
String selected=list.getString(list.getSelectedIndex());
textBox.setString(selected);
display.setCurrent(textBox);
}
//若该命令由textBox屏幕发出,则使用textBox中的文本内容替换原来List选项元素的内容
if(d == textBox){
String modified = textBox.getString();
list.set(list.getSelectedIndex(),modified,null);
display.setCurrent(list);
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -