| MIDlets实现用户界面(GUI)编程 |
|
|
|
|
Author: 一滴蔚蓝色 | Date: 2007-12-01 | View: 759
|
开发技术 -
程序设计
| ||||
|
1. 概述 MIDP为运行在MIDP容器中的MIDP应用定义了一个API,此API本身是建立在CLDC API之上的。MIDP用户接口API的Java类设计不是基于Java Abstract Window Toolkit(AWT)类的,而是为移动电话这类小型移动信息设备特别设计的。这类设备只有有限的屏幕尺寸和键盘性能。当程序员采用MIDP编写图形应用时,他们只能使用MIDP或CLDC API。 1)所有MIDP GUI类都是javax.microedition.lcdui包的组成部分。 2)MIDP用户接口的基本抽象图形是屏幕,Screen类对面向设备的图形和用户交互进行了封装。每次应用只能显示一个屏幕。 3)MIDP API具有”高级(high-level)”和”低级(low-level)”UI类。 高级UI-----例如Form,List,TextBox,TextField,Alert和Ticker具有设备适配功能,它对图象,文本,文本域以及单选按钮等进行支持。 低级UI-----例如Canvas类允许操作者任意绘画。 3. MIDP GUI中主要的类 1) Graphics类-----提供了用来绘画2D几何对象的Graphics对象。 javax.microedition.lcdui.Graphics类不是在MIDlet中显式创建的,表示抽象画面的Canvas类在MIDP GUI编程中提供了paint()方法,piant()方法取类型为Graphics的一个参数,用此参数实现MIDlet中Graphics类的功能。 2) Displayable类-----是一个抽象类 ,Displayable对象处理MIDlet的GUI输出.它有两个派生类javax.microedition.lcdui.Canvas和 javax.microedition.lcdui.Screen。 3) Canvas类-----Canvas类允许操作者任意绘画,与Graphics类都是低级UI.由Graphics类类提供的方法总是在Canvas类的派生类中使用的。 4) Screen类-----是高级UI,Form,List,TextBox,Alert类都是它的派生类。
4. 下面是Graphics类用法的一段代码: import javax.microedition.midlet.*; public class MidpGraphics extends MIDlet implements CommandListener public void startApp() throws MIDletStateChangeException public void pauseApp() public void destroyApp(boolean unconditional) throws MIDletStateChangeException class testCanvas extends Canvas //设定字体对象 //绘画出文本 ----运行效果就是在屏幕的中心显示文本”Hello MIDP”。
1) 任务陈述:第一屏幕显示包含名为Balance Enquiry(当前余额),Fixed Deposit Enquiry(定期储蓄),Check Status Enquiry(支票状况)项的菜单 当用户选择Balance Enquiry应显示进度指示器 当用户选择Fixed Deposit Enquiry应显示进度指示器 当用户选择Check Status Enquiry应显示打入支票号的TextBox 当用户打入支票号后应显示进度指示器 2).代码如下: // 导入lcdui和Midlet包 import javax.microedition.lcdui.*; // 定义扩展MidpGui类的MIDlet类 public class MidpGui extends MIDlet implements CommandListener // 定义窗体对象 Form form = new Form("Container Form"); public MidpGui() /** // mainMenu 方法 void mainMenu() public void pauseApp() { // 当MIDlet被撤消是调用 //显示进度指示器屏幕 //命令激活 public void commandAction(Command c, Displayable d) 本文关键字: MIDlets 用户界面 GUI 编程 阅读数: 760 | 打印 | E-mail
|
||||||||
| (克服J2ME开发中的困难之硬件设备) < 上一篇 | 下一篇 > (封装多MIDIet程序) |
|---|