一聚教程网:一个值得你收藏的教程网站

热门教程

J2ME学习笔记(九)

时间:2022-07-02 17:43:08 编辑:袖梨 来源:一聚教程网


MIDP低级图形处理

MIDP所提供的图形处理方法都在javax.microedition.lcdui里面。主要是如下几个类:Display,Graphic
s,Canvas,Font,Image。
1、Display:
在每个MIDlet之中是由一个Display,属于用Singleton
Pattern所封装起来的类别,需要使用getDisplay来取得。当使用setCurrent()方法,并同时将一个Dis
playable的子类作为参数就可以在屏幕上显示相关的画面。也可一用getCurrent()获取当前正在作用的
Displayable的对象。同时为了取得屏幕相关的属性可以使用isColor()返回屏幕是否为彩色,numColors(
)返回屏幕所支持的彩色数,如果返回值为2则为黑白两色。每当Display的setCurrent方法得到Canvas子
类作为参数的时候,MIDP系统会执行paint方法并将Graphics对象当作参数。里面有一点需要注意,由于
手持设备的屏幕大小并不是固定的,所以我们在填充背景色,前景色的时候有必要通过getWidth(),getHe
ight()两个方法取得屏幕的长、宽。
2、Image:
处理图形的时候会使用到Image类,根据Image类的产生方式可以分为可修改和不可修改的两个方面。
可以通过isMutable方法得到此Image类是否可以修改。还可以通过getWidth(),getHeight()方法取得Imag
e对象的长,宽。
可以通过读取图像文件,网络下载,resource bundle等方式创建一个不可修改的image对象。一旦创
建不可修改image对象,那么这个图像的内容将不可再次更改。
package com.graph;
/**
* @author You Li
*
* CopyRight (C) 2005 */
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
public class ImageEx extends MIDlet implements CommandListener {
private Command cmdExit;
private ImageCanvas canvas;
public ImageEx() {
cmdExit = new Command("Exit", Command.SCREEN, 2);
canvas = new ImageCanvas();
// TODO 自动生成构造函数存根
}
protected void startApp() throws MIDletStateChangeException {
// TODO 自动生成方法存根
canvas.addCommand(cmdExit);
canvas.setCommandListener(this);
Display.getDisplay(this).setCurrent(canvas);
}
protected void pauseApp() {

热门栏目