textfielddemo.java

来自「j2me学习 简单例子」· Java 代码 · 共 124 行

JAVA
124
字号
package example.demoseniorui.textfield;

import javax.microedition.lcdui.Command;
import javax.microedition.lcdui.Display;
import javax.microedition.lcdui.Form;
import javax.microedition.lcdui.Item;
import javax.microedition.lcdui.ItemStateListener;
import javax.microedition.lcdui.TextField;
import javax.microedition.midlet.MIDlet;
import javax.microedition.midlet.MIDletStateChangeException;

/**
 * <p>J2ME TextField Demo</p>
 * 
 * @author 刘光辉
 * @version 2009.02.01
 */
public class TextFieldDemo extends MIDlet implements ItemStateListener {

	private static final Command CMD_EXIT = new Command("退出",Command.EXIT,1);
	private boolean firstTime;
	private Form mainForm;
	
	TextField AnyCharacter;
	TextField EMail;
	TextField Number;
	TextField Decimal;
	TextField Phone;
	TextField Password;
	TextField URL;
	TextField Summary;
	
	/**
	 * <p>TextFieldDemo的构造函数</p>
	 */
	public TextFieldDemo() {
		firstTime = true;
		mainForm = new Form("TextField");
	}

	/**
	 * <p>启动程序,使MIDlet处于active状态</p>
	 * <p>在这个方法里声明了一个Form,用来放置TextField</p>
	 * @see javax.microedition.midlet.MIDlet#startApp()
	 */
	protected void startApp() throws MIDletStateChangeException {
		if(firstTime){
			AnyCharacter = new TextField("Any Character","",15,TextField.ANY);
			EMail = new TextField("EMail","",15,TextField.EMAILADDR);
			Number = new TextField("Number","",15,TextField.NUMERIC);
			Decimal = new TextField("Decimal","",15,TextField.DECIMAL);
			Phone = new TextField("Phone","",15,TextField.PHONENUMBER);
			Password = new TextField("Password","",15,TextField.PASSWORD);
			URL = new TextField("URL","",15,TextField.URL); 
			Summary = new TextField("总结","",50,TextField.UNEDITABLE);
			
			mainForm.append(AnyCharacter);
			mainForm.append(EMail);
			mainForm.append(Number);
			mainForm.append(Decimal);
			mainForm.append(Phone);
			mainForm.append(Password);
			mainForm.append(URL);
			mainForm.append(Summary);
			
			mainForm.addCommand(CMD_EXIT);
			mainForm.setItemStateListener(this);
		}

		Display.getDisplay(this).setCurrent(mainForm);
	}

	/**
	 * <p>暂停程序,使MIDlet处于pause状态</p>
	 * @see javax.microedition.midlet.MIDlet#pauseApp()
	 */
	protected void pauseApp() {

	}

	/**
	 * <p>销毁程序,使MIDlet处于destroyed状态</p>
	 * 
	 * @param boolean unconditional 
	 * <ul>true 释放资源保存数据进入destroyed状态,false 抛出异常保持当前状态</ul>
	 * @see javax.microedition.midlet.MIDlet#destroyApp(boolean)
	 */
	protected void destroyApp(boolean arg0) throws MIDletStateChangeException {

	}
	
	/**
	 * <p>当一个对象状态被改变回调此函数,实现ItemStateListener接口</p>
	 * @param Item item 对象
	 */
	public void itemStateChanged(Item item) {
		if(item == AnyCharacter){
			Summary.setString("输入的AnyCharacter为:"+AnyCharacter.getString());
		}
		else if(item == EMail){
			Summary.setString("输入的EMail为:"+EMail.getString());
		}
		else if(item == Number){
			Summary.setString("输入的Number为:"+Number.getString());
		}
		else if(item == Decimal){
			Summary.setString("输入的Decimal为:"+Decimal.getString());
		}
		else if(item == Phone){
			Summary.setString("输入的Phone为:"+Phone.getString());
		}
		else if(item == Password){
			Summary.setString("输入的Password为:"+Password.getString());
		}
		else if(item == URL){
			Summary.setString("输入的URL为:"+URL.getString());
		}
		else {
			Summary.setString("");
		}
	}

}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?