MIDP高级UI的使用(一)LCDUI包的体系结构

首先看看整个LCDUI包的体系结构图:


Screen 类属于高级图形用户界面组件,Canvas是低级图形用户界面组件,在同一时刻,只能有唯一一个Screen或者Canvas类的子类显示在屏幕上,我们可以调用Display的setCurrent()方法来将前一个画面替换掉,我们自行将前一个画面的状态保留起来,并自己控制整个程序画面的切换。

同时我们可以运用 javax.miroedition.lcdui.Command类来给我们的提供菜单项目的功能,分别是:Command.BACK、 Command.CANCEL、Command.EXIT、Command.HELP、Command.ITEM、Command.OK、 Command.SCREEN和Command.STOP,我们在Displayable对象中定义了addCommand()和 removeCommand()两个方法,这就意味着我们可以再高级UI和低级UI中同时使用Command类,同时我们通过注册Command事件来达到事件处理的目的,即Command必须与CommandListener接口配合使用才能反映用户的动作。

还有在Displayable类的子类中都加入了Ticker,我们可以用setTicker()来设定画面上的Ticker,或者用getTicker()方法来取得画面的Ticker对象。下面给出Screen类的主要结构图:

时间: 2025-01-20 07:55:23

MIDP高级UI的使用(一)LCDUI包的体系结构的相关文章

MIDP高级UI的使用(二)List组件

列表List 根据上一节的概述我们已经大概了解了Lcdui 这个包,现在让我们来介绍Screen 类这个类里面的几个重要的类,我们本届家少的是Screen 的一个子类List, 它一共有三种具体的类型:implicit( 简易式) ,exclusive( 单选式) ,multiple( 多选式) . 与相关的List 元素相关的应用程序操作一般可以概括为ITEM 型命令或者SCREEN 类型命令,其作用域范围的判断依据是该操作是影响到被选择原则元素还是整个List 来判定,List 对象上的操作

MIDP高级UI的使用(三)TextBox

当我们需要再移动设备上输入数据时,TextBox 就派上用场了,我们使用的TextBox 构造函数参数共有四个,TextBox textbox = new TextBox(string title, string content, string maxLength, string limitType) ,第一个是标题,第二个是TextBox 的初始内容,第三个是允许输入字符的最大长度,第四个是限制内型.值得注意的是:一个TextBox 必须附加一个命令,否则用户将不能激发任何行为,而陷入这个Te

MIDP高级UI的使用(四)Alert

这个类比较有意思,它是用来提醒用户关于错误或者其他异常情况的屏幕对象,这个警告只能作为简短的信息记录和提醒,如果我们需要长一点的,我们可以使用其它的Screen 子类,最常见的是Form .同时我们顺便提一下和它相关的一个类AlertType ,需要提醒读者注意的一点是AlertType 是一个本身无法实例化的工具类.(即我们不能像Form 那样产生具体对象) AlertType 共有5 个类型:ALARM (警报),CONFIRMATION (确定),ERROR (错误),INFO (信息提示

[JavaME]在高级UI上的keyPressed事件截获的说明

譬如说你是在一个Form上,那么有一点点不幸. 据我所知,除非你在Form上加一个CustomItem,并且选中它,那么你的 protected void keyPressed(int key) {     System.out.println("Key pressed: "+key); } 能够打印出你的按键. 但是如果你当前焦点在TextField或其他lcdui.Item,那么不可能截获按键. 如果我说错了,请指出. 譬如说你当前是在一个Canvas上,ok, To "

Linux的高级路由和流量控制:对包进行分类的高级过滤器

就象在分类的队列规定一段中解释的,过滤器用与把数据包分类并放入相应的子队列.这些过滤器在分类的队列规定内部被调用. 下面就是我们可用的分类器(部分): fw 根据防火墙如何对这个数据包做标记进行判断.如果你不想学习tc的过滤器语法,这倒是一个捷径.细节请参见队列那一章. u32 根据数据包中的各个字段进行判断,如源IP地址等等. route 根据数据包将被哪条路由进行路由来判断. rsvp, rsvp6 根据数据包的RSVP情况进行判断.只能用于你自己的网络,互联网并不遵守RSVP. tcind

分析MIDP的高级事件处理机制

MIDP中的事件处理机制在J2ME用户图形界面开发中具有举足轻重的地位,本文将深入分析MIDP高级事件处理机制,本文提供的程序是新手学习不错的例子.在接下来的文章我会继续讲述低级事件处理机制. MIDP的事件处理处理机制同样是采用回调的机制,你可以参考AWT的事件处理原理.在MIDP中分高级事件处理和低级事件处理,前者主要是针对高级UI,而后者主要是这对Canvas这样的低级UI的.不管怎样,我们必须首先介绍的是Command类,移动信息设备的输入主要来自于手机的键盘,导航则主要是由按钮来完成的

Lucene 3.6.2入门(6) 高级搜索之排序

package com.jadyer.lucene; import java.io.File; import java.io.IOException; import java.text.SimpleDateFormat; import java.util.Date; import org.apache.lucene.analysis.standard.StandardAnalyzer; import org.apache.lucene.document.Document; import org.

分析MIDP低级事件处理机制

在MIDP高级事件处理机制中我们讲述了如何实现CommandListener和ItemStateListener接口来完成高级事件处理.但是来自于键盘输入的低级事件是不能由Command来完成的.你必须继承Canvas类并覆盖其中的方法来完成低级事件的处理. 通常低级事件的处理是为了满足游戏开发的需要,因为游戏开发相关的问题非常复杂.因此不在这里进行阐述,有兴趣的朋友可以和我索要相关的游戏开发资料.MIDP定义了如下键值在Canvas类内 KEY_NUM0 KEY_NUM1 KEY_NUM2 K

三大UI框架Dijit、ExtJS、jQuery UI全方位对比

 Dijit.ExtJS.jQuery UI 简介 Dojo 是开源 ja vasc ript 库中起步较早的先行者之一.由 Alex Russell, David Schontzler, Dylan Schiemann 等人于 2004 年创立.Dojo 具有类似 Java 的包机制 (packaging system), 将 JS 代码根据功能进行了模块化.主要包含 Dojo.Dijit 以及 Dojox 三个包.其中 Dojo 包提供稳定的内核 API,Dijit 包提供各类 UI 控件,