Java手机软件图形界面API篇.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Java手机软件图形界面API篇.doc

Java手机软件图形界面API篇 手持设备的用户接口编程不同于桌面微机编程。例如,手持设备的显示尺寸要小,显示设备并不总是包括点击工具如鼠标和笔。由于这些原因,在手持设备的GUI编程时,我们不可能遵循与台式微机编程GUI同样的规则。 CLDC本身并没有定义任何的GUI功能。代之的是,J2ME的官方GUI类用象MIDP这样的轮廓文件所描述,并由JAVA社团组织定义。你可能注意到在MIDP中描述的GUI类不是基于AWT的,这似乎存在很大问题。请往下看。 Java手机软件图形界面API之慨述 Java手机软件图形界面API之screen相关API Java手机软件图形界面API之Form相关API Java手机软件图形界面API之低级GUI组件 Java手机软件图形界面API之慨述 一、序言 手持设备的用户接口编程不同于桌面微机编程。例如,手持设备的显示尺寸要小,显示设备并不总是包括点击工具如鼠标和笔。由于这些原因,在手持设备的GUI编程时,我们不可能遵循与台式微机编程GUI同样的规则。 CLDC本身并没有定义任何的GUI功能。代之的是,J2ME的官方GUI类用象MIDP这样的轮廓文件所描述,并由JAVA社团组织定义。你可能注意到在MIDP中描述的GUI类不是基于AWT的,这似乎存在很大问题。请往下看。 二、为什么不重用AWT? 经过相当的考虑之后,MIDP专家组决定不再重用已有的AWT和Swing类。原因如下: ·AWT是为桌面微机开发的,并为这种情形作了优化处理。 ·AWT设定了某些用户交互模式。AWT的组成当中考虑到了如鼠标等的点指设备,但是许多手持设备,如手机等,只有键盘用于输入。 ·AWT具丰富的特性,包括在手持设备上还不能实现的。例如,AWT为窗口管理提供广泛支持,如窗口大小与重叠调用。然而,有限的手持设备的显示空间,使得它上面的窗口调整根本不可能实现。所以,手持设备是用不到AWT的窗口布局管理器的。 ·当用户与基于AWT的应用程序交互时,甚至对象是动态创建的。这些对象仅在与之相关的事件被应用程序或系统处理时--此时,这些对象对于垃圾回收器来说是有效的--这些对象才存在。但是手持设备有限的CPU和内存无法承担如此重任。 三、MIDP GUI API 基于以上原因,MIDP创建了它自己的简短的GUI,其与AWT存在相当的不同。MIDP GUI包含了低级的和高级的API两类,这两类AIP各有自己的事件集。本文将讨论并演示通过这两类API来使用对象的例子。通过API操纵事件在下一章中介绍。 高级的API主要应用在移动设备开发特别注重移植性的情况下。为了保证可移植性,API进行 了高级抽象,因此给予用户在控件的外观和感觉上极少的控制。例如,你没法定义一个高级组件的可视化外观(形状,颜色或者字体)。大多数与组件的交互由系统 实现体所封装;应用程序不必在乎它们。因此,底层的实现上为适应于硬件和本机用户接口风格作了必要的调整。实现了高层API的类全部继承自 javax.microedition.lcdui.Screen类。 而低层API作了很少的抽象处理。该设计用于要求对图形元素进行精确控制的场所,这时应用程 序还可以对低层输入事件进行存取。这一类API使得应用程序可以对在屏幕上显示的内容进行精确的控制。 javax.microedition.lcdui.Canvas和javax.microedition.lcdui.Graphics类实现该低层 API。但是,应该明确指出,无法保证存取低层API的MIDlets程序是可移植的,因为这种API提供了存取特定设备的细节操作。 1、MIDP GUI模型 下面是MIDP GUI在内核上如何工作的一个模型。为在某MIDP设备上进行显示,你需要取得该设备的display,这是由 javax.microedition.lcdui.Display类来描述的。类Display是唯一的显示管理器,当用于每一个活动的MIDlet时 被实例化,并提供方法以检索有关该设备显示能力的信息。 获取设备的显示信息是很容易的。但是,对象本身并不令人感兴趣。而更令人感兴趣的抽象是 screen,它封装和组织图形对象并协调通过设备的用户输入。Screen由javax.microedition.lcdui.Screen对象来描 述并由Display 对象调用setCurrent( )方法显示。一个应用程序中可有多个screen,但是在某一时刻只有一个screen在屏幕上是可见的(当前的这一个),用户只能遍历在这一个 screen上的项。图1显示了在display与它的可能的多个screen之间的一对多的关系。 图1.display与screens间的关系 在MIDP GUI中共有三种类型的screen: ·完

文档评论(0)

xx88606 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档