第一范文网 - 专业文章范例文档资料分享平台

NEC手机JAVA中级讲座-第八讲 NEC扩展

来源:用户分享 时间:2025/5/19 17:13:31 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

第八讲 NEC扩展API

1. 引言

在上讲中,我们对网络的相关功能进行了解说。截止上讲以前的讲座,我们讲述的都是关于MIDP的JAVA相关技术的内容,本讲将收尾,介绍NEC扩展API。

2. NEC扩展

NEC扩展API中有如下的类。 类 AudioClip AudioListener ImageEffector ImageMap 处理声音数据类。已在第五讲解说。 Audio事务监听器。已在第五讲解说。 颜色变换类。将在本讲解说。 模拟PCG(プログラマブルキャラクタジェネレータ)类。因为能轻松的把多种画面分配在格子里,所以能很容易的制作出背景和棋面(ImageMap)。不在本讲解说。 Media NxCanvas NxGraphics PhoneControl Sprite SpriteSet

关于上表的ImageEffector、NxCanvas、NxGraphics、Sprite、SpriteSet,我们将按顺序展开介绍。

2.1. 扩展图形类

NxGraphics 类是Graphics 的扩展类。下面介绍可以实现的Sprite、ImageMap的描画以及矩形区域的复制。NxGraphics 类定义了以下方法。

void copyArea(int sx, int sy, int width, int height, int dx, int dy)

把Canvas描画的矩形区域复制后描画。利用此功能能够把描画过一次的东西复制下来进行描画,因此当描画相同内容的拷贝时,可以简化步骤。

void drawImageMap(ImageMap map, int x, int y)

对将多种画面分配在格子里的ImageMap进行描画。

取得媒体数据类。已在第五讲解说。 NEC扩展canvas,支持多重按键。将在本讲解说。 NEC扩展Graphics。描画Sprite、ImageMap。将在本讲解说。 控制震动、逆光类。不在本讲解说。 Sprite类。将在本讲解说。 管理Sprite类。将在本讲解说。 void drawSpriteSet(SpriteSet sprites)

下面展示的是使用copyArea方法的范例。该范例使用copyArea对移动球的一部分进行复制。 import java.util.Timer; import java.util.TimerTask;

import javax.microedition.lcdui.Canvas; import javax.microedition.lcdui.Graphics; import javax.microedition.lcdui.Image;

import com.nec.graphics.NxGraphics; /**

* copyArea范例动画canvas */

public class CopyAreaMovingBallCanvas extends Canvas {

/**

* 构造函数 */

public TimerMovingBallCanvas() {

//读取画面 try{ }

img = Image.createImage(\e.printStackTrace();

}catch(Exception e){ private int x; //球的x坐标 private Image img; private Timer timer; private TimerTask task;

描画Sprite。后面有Sprite的相关介绍。 取得NxGraphics对象。

static NxGraphics getNxGraphics(javax.microedition.lcdui.Graphics g)

} /**

// 设定Timer,TimerTask timer = new Timer();

task = new TimerMovingBallTask(this);

timer.schedule(task, 100, 100); //从100毫秒后起每100毫秒执行一次任务

* 描画方法 */

protected void paint(Graphics g) { } /**

* 改变球的x坐标 */

public void increment() { } /**

* timer task

* 根据计时器设定的时间表执行run()方法。

x += 3; //清除画面

g.setColor(255, 255, 255); //白

g.fillRect(0, 0, getWidth(), getHeight()); //查看球

g.setColor(255, 0, 0);

g.drawString(\g.fillArc(x, 50, 40, 40, 0, 360);

//复制矩形区域

NxGraphics ng = NxGraphics.getNxGraphics(g); ng.copyArea(x,50,20,20,x,100);

}

*/

class TimerMovingBallTask extends TimerTask { }

private TimerMovingBallCanvas canvas; /**

* 构造函数 * @param canvas */

public TimerMovingBallTask(TimerMovingBallCanvas canvas) { } /**

* 被计时器呼叫时进行的处理 */

public void run() { }

canvas.increment(); canvas.repaint(); this.canvas = canvas;

运行结果如下所示。

搜索更多关于: NEC手机JAVA中级讲座-第八讲 NEC扩展 的文档
NEC手机JAVA中级讲座-第八讲 NEC扩展.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c4exc81bkfq6d7jn4l21l_1.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top