choicegroupdemo.java

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

JAVA
108
字号
package example.demoseniorui.choicegroup;

import javax.microedition.lcdui.ChoiceGroup;
import javax.microedition.lcdui.Command;
import javax.microedition.lcdui.CommandListener;
import javax.microedition.lcdui.Display;
import javax.microedition.lcdui.Displayable;
import javax.microedition.lcdui.Form;
import javax.microedition.lcdui.Image;
import javax.microedition.midlet.MIDlet;
import javax.microedition.midlet.MIDletStateChangeException;

/**
 * <p>J2ME ChoiceGroup Demo</p>
 * 
 * @author 刘光辉
 * @version 2009.02.02
 */
public class ChoiceGroupDemo extends MIDlet implements CommandListener {
	
	private static final Command CMD_EXIT = new Command("退出",Command.EXIT,1);
	private Display display;
	private Form mainForm;
	private boolean firstTime;
	
	/**
	 * <p>ChoiceGroupDemo的构造函数</p>
	 */
	public ChoiceGroupDemo() {
		firstTime = true;
	}

	/**
	 * <p>启动程序,使MIDlet处于active状态</p>
	 * <p></p>
	 * @see javax.microedition.midlet.MIDlet#startApp()
	 */
	protected void startApp() throws MIDletStateChangeException {
		if(firstTime){
			display = Display.getDisplay(this);
			
			mainForm = new Form("ChoiceGroup");
			mainForm.append("有效的choice group类型:");
			
			Image[] imgArray = null;
			
			try{
				Image duke = Image.createImage("/Icon.png");
				
				imgArray = new Image[]{duke,duke,duke,duke};
			}catch(Exception e){}
			
			String[] strArray = {"Option A","Option B","Option C","Option D"};
			
			ChoiceGroup[] cgs = {
					new ChoiceGroup("Exclusive",ChoiceGroup.EXCLUSIVE,strArray,imgArray),
					new ChoiceGroup("Multiple",ChoiceGroup.MULTIPLE,strArray,imgArray),
					new ChoiceGroup("Pop-up",ChoiceGroup.POPUP,strArray,imgArray)
			};
			for(int i=0;i<cgs.length;i++){
				mainForm.append(cgs[i]);
			}
			
			mainForm.addCommand(CMD_EXIT);
			mainForm.setCommandListener(this);
			firstTime = false;
		}
		
		display.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 unconditional) throws MIDletStateChangeException {

	}

	/**
	 * <p>命令处理函数,实现CommandListener接口</p>
	 * @param Command c 命令对象
	 * @param Displayable d 被放置到显示屏显示的对象
	 */
	public void commandAction(Command c, Displayable d) {
		if(c == CMD_EXIT){
			try {
				destroyApp(false);
			} catch (MIDletStateChangeException e) {
				e.printStackTrace();
			}
			notifyDestroyed();
		}
	}

}

⌨️ 快捷键说明

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