📄 guitests.java
字号:
import javax.microedition.lcdui.*;import javax.microedition.midlet.*;public class GuiTests extends MIDlet implements CommandListener {//显示管理器Display display = null;//菜单列表对象List menu = null; // 主菜单 // 选择框列表对象 List choose = null; // 文本框对象 TextBox input = null; // 时钟对象 Ticker ticker = new Ticker("Test GUI Components"); // 警报对象 final Alert soundAlert = new Alert("sound Alert"); // 日期对象 DateField date = new DateField("Today's date: ", DateField.DATE); // 表单对象 Form form = new Form("Form for Stuff"); // 信息标尺对象 Gauge gauge = new Gauge("Gauge Label", true, 10, 0); // 文本对象 TextField textfield = new TextField("TextField Label", "abc", 50, 0); // 命令对象 static final Command backCommand = new Command("Back", Command.BACK, 0); static final Command mainMenuCommand = new Command("Main", Command.SCREEN, 1); static final Command exitCommand = new Command("Exit", Command.STOP, 2); String currentMenu = null; // 构造器. public GuiTests() { } /** * 启动这个MIDlet并且创建一个与exit命令对象相关连的菜单列表 */ public void startApp() throws MIDletStateChangeException { display = Display.getDisplay(this); menu = new List("Test Components", Choice.IMPLICIT); menu.append("Test TextBox", null); menu.append("Test List", null); menu.append("Test Alert", null); menu.append("Test Date", null); menu.append("Test Form", null); menu.addCommand(exitCommand); menu.setCommandListener(this); menu.setTicker(ticker); mainMenu(); } public void pauseApp() { display = null; choose = null; menu = null; ticker = null; form = null; input = null; gauge = null; textfield = null; } public void destroyApp(boolean unconditional) { notifyDestroyed(); }//主菜单方法void mainMenu() { display.setCurrent(menu); currentMenu = "Main"; } /** * 测试文本框组件. */ public void testTextBox() { System.out.println("textbox called"); input = new TextBox("Enter Some Text:", "", 5, TextField.ANY); input.setTicker(new Ticker("testTextBox")); input.addCommand(backCommand); input.setCommandListener(this); input.setString(""); display.setCurrent(input); currentMenu = "input"; } /** * 测试list组件. */ public void testList() { choose = new List("Choose Items", Choice.MULTIPLE); choose.setTicker(new Ticker("listTest")); choose.addCommand(backCommand); choose.setCommandListener(this); choose.append("Item 1", null); choose.append("Item 2", null); choose.append("Item 3", null); display.setCurrent(choose); currentMenu = "list"; } /** * 测试 Alert 组件. */ public void testAlert() { soundAlert.setType(AlertType.ERROR); soundAlert.setString("** ERROR **"); display.setCurrent(soundAlert); } /** * 测试 DateField 组件. */ public void testDate() { java.util.Date now = new java.util.Date(); date.setDate(now); Form f = new Form("Today's date"); f.append(date); f.addCommand(backCommand); f.setCommandListener(this); display.setCurrent(f); currentMenu = "date"; } /** * 测试 Form 组件. */ public void testForm() { form.append(gauge); form.append(textfield); form.addCommand(backCommand); form.setCommandListener(this); display.setCurrent(form); currentMenu = "form"; } /** * 处理命令事件. */ public void commandAction(Command c, Displayable d) { String label = c.getLabel(); if (label.equals("Exit")) { destroyApp(true); } else if (label.equals("Back")) { if(currentMenu.equals("list") || currentMenu.equals("input") || currentMenu.equals("date") || currentMenu.equals("form")) { // 回到菜单 mainMenu(); } } else { List down = (List)display.getCurrent(); switch(down.getSelectedIndex()) { case 0: testTextBox();break; case 1: testList();break; case 2: testAlert();break; case 3: testDate();break; case 4: testForm();break; } } }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -