博文
[转]第4章 MIDP低级UI的使用1(2006-08-05 08:59:00)
摘要:4.1 低级API与低级事件的联系
4.2 重绘事件及Graphics入门
4.2.1 坐标概念
4.2.2 颜色操作
4.2.3 绘图操作
4.3 Canvas与屏幕事件处理
4.4 键盘及触控屏幕事件的处理
4.5 Graphics相关类
4.5.1 Image类
4.5.2 字体类
我们从javax.microedition.lcdui.Canvas开始了解我们的低级UI,我们要用到低级UI必须要继承Canvas这个抽象类,在 Canvas的核心是paint()这个方法,这个方法做是负责绘制屏幕上的画面,每当屏幕需要重新绘制时,就会产生重绘事件时,系统就会自动调用paint(),并传入一个Graphics对象。
任何时候我们都可以通过调用reapaint()方法来产生重绘事件,它有两个方法,一个需要四个参数,分别用来指示起始坐标(X,Y),长宽,另一个则不需要任何参数,代表整个画面重新绘制。
我们可以通过getWidth()和getHeight() 方法获得Canvas的当前范围大小。每当Canvas 范围大小发生变化时,就会自动调用Canvas类的 sizeChanged()方法。
在低级UI里,我们可以直接把Graphics渲染到屏幕上,也可以在屏幕外合成到一个 Image中,已渲染的图形具体是合成Image还是显示到屏幕上,要看这个Graphics具体的来源而定,而渲染到屏幕上的Graphics对象将被送到paint()方法中来进行调度,这也是显示在屏幕上的唯一的途径,仅在paint()方法的执行期间这个应用程序可以对Graphics进行操作,......
[转]第3章 MIDP高级UI 的使用2(2006-08-05 08:55:00)
摘要:3.4 Alert
这个类比较有意思,它是用来提醒用户关于错误或者其他异常情况的屏幕对象,这个警告只能作为简短的信息记录和提醒,如果我们需要长一点的,我们可以使用其它的Screen子类,最常见的是Form。同时我们顺便提一下跟它相关的一个类AlertType,需要提醒读者注意的一点是AlertType是一个本身无法实体化的工具类。(即我们不能象Form那样产生具体的对象)
AlertType共有5个类型:ALARM(警报),CONFIRMATION(确定),ERROR(错误),INFO(信息提示),WARNING(警告)。
Alert是一个比较特殊的屏幕对象,当我们在setCurrent()方法中调用它的时候,它会先发出一段警告的声音,然后彩绘显示在屏幕上,过了一段时间之后,它会自动跳回之前的画面。
我们需要注意的是我们必须在使用setCurrent()显示Alert之前定义好它可以跳回的画面,否则会发生异常。
在Alert中我们可以通过setTimeout()方法来设定间隔的时间,setType()来调用我们上面提到的四种类型,setImage()来定义图片,setString()来定义内含文字,同时通过getType(),getImage(),getString()来取得相应的对象。
当Alert显示了我们在setTimeout()中指定的间隔时间后,它会跳回我们之前指定的对象,如果我们在指定显示时间时传入了Alert.FOREVER作为参数,这时,除非用户按下定义哈哦的接触键,否则,屏幕会一直显示这个Alert。如果在一个定时的Alert中只有一个命令,那么超时发生时命令会自动激活。
import javax.microedition.lcdui.*;
import javax.microedition.midlet.MIDlet;
public class AlertDemo
extends MIDlet {
......
[转]第3章 MIDP高级UI 的使用1(2006-08-05 08:55:00)
摘要:3.1 概述
我们在这一节要介绍一下整个LCDUI包的结构,让读者对我们整个UI的学习的有个大致的了解。下图为我们展示了整个LCDUI包的体系:
Screen类属于高级图形用户界面组件,就是我们这一章要着重介绍的内容,Canvas是低级图形用户界面组件,在同一时刻,只能有唯一一个Screen或者Canvas类的子类显示在屏幕上,我们可以调用Display的setCurrent()的方法来将前一个画面替换掉,我们必须自行将前一个画面的状态保留起来,并自己控制整个程序画面的切换。
同时我们可以运用javax.microedition.lcdui.Command类来给我们的提供菜单项目的功能,分别是:Command.BACKCommand、Command.CANCEL、Command.EXIT、Command.HELP、Command.ITEM、Command.OK、Command.SCREEN和Command.STOP,我们在Displayable对象中定义了addCommand()和removeCommand()两个方法,这就意味着我们可以在高级UI和低级UI中同时使用Command类,同时我们通过注册Command事件来达到事件处理的目的,即Command必须与CommandListener接口配合使用才能反映用户的动作,具体的使用方法我们在具体的示例中会给出详细的用法,读者可以参阅API的说明文档获得进一步的认识。
还有在Displayable类的子类中都加入了Ticker,我们可以用setTicker()来设定画面上的Ticker,或者用getTicker()这个方法来取得画面所含的Ticker对象。
下面我们给出Screen类的主要结构图:
3.2 列表List
根据第零节的概述我们已经大概了解了Lcdui这个包,现在让我们来开始介绍Screen这个类里面的几个重要的类,我们本节介绍的是Screen的一个子类List,它一共有三种具体的类型:implicit(简易式),exclusive(单选式),multiple(多选式)。
与相关的L......
[转]第3章 MIDP高级UI 的使用3(2006-08-05 08:53:00)
摘要:3.6.2 ImageItem
下面我们来看ImageItem,ImageItem和StringItem其实区别仅仅在于一个是显示图像,一个是文字,它同样有两个构造函数,其中用到最多的是5个参数的构造函数,第一个是该Item的Label,第二个是图片,第三个是等效线,第四个是取代的文字(图片无法现实时),第五个是外观(和StringItem相同)。
import javax.microedition.lcdui.*;
import javax.microedition.midlet.*;
public class ImageItemMIDlet extends MIDlet
implements ItemCommandListener
{
private Display display;
public ImageItemMIDlet()
{
display = Display.getDisplay(this);
}
public void startApp()
{
Image img = null ;
&......
[转]J2ME手机游戏开发环境WTK配置(2006-08-04 15:58:00)
摘要:J2ME新手最常使用的开发工具Wireless Toolkit(WTK)。WTK 的全称是Sun J2ME Wireless Toolkit —— Sun的无线开发工具包。这一工具包的设计目的是为了帮助开发人员简化j2me的开发过程。
WTK是Sun提供的一个开发工具包。目前各大手机厂商往往把WTK经过自身的简化与改装,推出适合自身产品,如SonyEricsson,Nokia Developer’s suit等,都属于此种类型;而通过JBuilder, Eclipse等IDE,J2ME开发包工具可以被绑定在这些集成开发环境中,进一步提高开发效率。
1.1安装过程
WTK的安装程序与普通程序一样简单,只有一点需要注意,由于WTK自身并没有附带Java的运行环境JDK,所以,在WTK安装之前你需要安装自己的JDK(我们这里选用的是JDK1.4.2)。JDK的安装比较简单,和普通程序的安装一样,读者可以从附带的光盘中找到JDK1.4.2进行安装,不需要进行特殊设置。
JDK安装成功后,接下来我们安装WTK。WTK会首先自动检测当前系统已有的Java虚拟机:
然后显示出当前虚拟机所在路径
您在确定无误后,就可以继续了,最后安装成功后,您将得到一个包括多种实用工具的开发包。以下是安装显示的菜单项。
1.2执行MIDlet、打包和混淆
1.2.1执行MIDlet
除了在KToolbar中执行一个程序,我们还可以在程序组中直接选择Run MIDP Application…, 这是就可以在弹出的对话框中选择其它路径中的JAD程序运行了。
*当我们直接选择运行时,需要注意两个问题:
1. JAD描述文件与其指定的JAR文件在同一个目录下。
2. 运行目录路径中不要包含中文。
1.2.2打包成JAR
KToolbar的生成功能只能帮我们将源代码编译并预先审核,并不会帮我们产生JAR文件,而我们如果要发布MIDP程序,除了JAD描述文件,JAR是必须的,这就需要打包。
......
最近看了龙樱(2006-08-04 14:25:00)
摘要:的最后几集,可惜我已经在大学了,否则一定拼命读书!
世上没有跨不去的墙!正是令人振奋!
日本除了A片外,教育也很棒!......
[转]在Eclipse3.0.1上安装EclipseME0.5.5版本 (2006-08-03 15:20:00)
摘要:Eclipse是IBM公司资助的开源IDE开发环境,Eclipse正受到越来越多的开发人员的关注。J2ME Wireless Toolkit 2.1提供了运行J2ME应用程序所需要的库以及模拟器等。EclipseME插件可以让开发人员在 Eclipse环境中轻松开发J2ME应用程序。现在Eclipse的最新版本是3.0.1,而EclipseME刚推出的0.5.5版本,此版本增加了很多新的功能,并且此版本有着跟已往完全不同的安装方式。
1. 安装前的准备工作:
a) JDK的安装:
J2SE 1.5 http://java.sun.com/j2se/1.5.0/index.jsp 或J2SE 1.4.2 http://java.sun.com/j2se/1.4.2/index.jsp 其中1.4.2版本文件名为:j2sdk-1_4_2_03-windows-i586-p.exe 48.2MB;
b) J2ME Wireless Toolkit 2.1_01的安装:
http://java.sun.com/products/j2mewtoolkit/download-2_1.html 下载文件名为:j2me_wireless_toolkit-2_1_01-windows.exe 14.4MB;
c) Eclipse 3.0.1的安装:
http://www.eclipse.org/downloads/index.php 下载后解压到一个目录下即可(本文假设解压到D:\eclipse中)下载文件名为:eclipse-SDK-3.0.1-win32.zip 85.4MB;
d) EclipseME 0.5.5 的下载:
http://sourceforge.net/project/showfiles.php?group_id=86829 文件名为:eclipseme.feature_0.5.5_site.zip 4.13MB。
2. 开始安装EclipseME 0.5.5:
从0.5.5版本开始,EclipseME将采用新的安装模式。而在0.5.0版本及之前版本均是一个压缩文件解压到Eclipse的安装路径下即可。这种安装......
[程序之巢]j2me下载的总结(2006-08-03 11:41:00)
摘要:1首先到www.java.sun.com下下载j2se sdk 1.4以上版本
2下载Eclipse3.2,和sdk 在同一路径
3J2ME Wireless Toolkit 2.1
4下载EclipseME,要配置
基本上就OK了,最好是中文版,而且Eclipse3.2会用
5蓝牙接口等接入手机
6找书学j2me编程......
[程序之巢]j2me第1课(2006-08-01 19:06:00)
摘要:准备学了,J2ME,虽然下学期学汇编,算了,那东西对我没兴趣,我也不认识它,还是学J2ME吧,现在大量找网站,看有好贴就转,好书就下,争取出去做个J2ME设计者.
现在第二天了,我要掌握一些基本类才行,手上没机,只有在网吧,下载东西又会被删了,只能用看的.......
[转]Eclipse开发J2ME程序之安装配置(2006-08-01 19:04:00)
摘要:引言
在上一篇文章中介绍了Eclipse是一款非常出色和著名的开源项目。开放源代码软件是这样一种软件,它们在发布时附带了旨在确保将某些权利授予用户的许可证。当然,最明显的权利就是源代码必须可用,以便用户能自由地修改和再分发该软件。尽管大多数开发人员不会使用Eclipse来开发插件,或创建基于Eclipse的新产品,但是由Eclipse的开放源代码性质所决定,我们在使用Eclipse 时是完全免费可用的。只需登陆Eclipse官方网站www.eclipse.org就可以获得这款优秀的IDE。
Eclipse的下载与安装
进入Eclipse项目的主页后点击Downloads,将出现一个镜像列表,其中大多是欧美地区的,选择一个距离比较近的镜像点(这样速度能快些)并进入下载页,笔者选择的是台湾地区的一个镜像站点http://eclipse.cdpa.nsysu.edu.tw/downloads/。目前最新版本为3.0.1。一般Eclipse同时提供几个下载版本:Release,Stable Build,Integration Build和Nightly Build,建议下载Release或Stable版本,笔者用的是Release版本=敫冒姹镜南略匾趁婧驟clipse提供多种操作系统的版本,读者可以根据实际情况下载相应的压缩包。如果使用的是是在Windows平台,需要下载的正确版本为eclipse-SDK-3.0.1-win32.zip。Eclipse支持多国语言,只要下载与SDK相应的多国语言包插件就可以实现软件的本地化。对于上述版本的SDK,相应的多国语言包插件版本为eclipse3.0.1-SDK-win-LanguagePackFeature.zip。
安装Eclipse的步骤非常简单:只需将下载的压缩包按原路径直接解压既可,可以说是一款"环保"软件。由于Eclipse版本升级比较快,如果有了更新的版本,要先删除老的版本重新安装,而不能直接解压到原来的路径覆盖老版本。之后,将多国语言包解压并将解压出来的plugins文件夹和features文件夹去覆盖eclipse文件夹下的同名文件夹即可。如果当前操作系统的JRE环境安装正确无误,现在运行Eclipse.exe将会闪现如下所示的很酷的月蚀启动......