j2megamecanvas:J2ME游戏APIのGameCanvas游戏画布来源: 发布时间:星期日, 2009年8月16日 浏览:27次 评论:0
GameCanvas是MIDP2.0个最主要元素提高了J2ME游戏开发方便性相对于MIDP1.0降低了J2ME游戏开发难度跟成本本文专门详述了GameCanvas游戏画布有关内容对GameCanvas有个大概剖析
、GameCanvas中主要思路方法、思路方法原型跟思路方法作用如下整理总结: 1、思路方法GameCanvas思路方法原型protected GameCanvas(boolean suppressKeyEvents)作用:构造思路方法参数 suppressKeyEvents 表示是否需要处理游戏键的外其他按键事件例如数字键如果此参数为 false 那么按键事件处理思路方法keyPressed keyRepeated keyReleased 在运行过程中不会被这样可以提高速度和性能 2、思路方法getGraphics思路方法原型protected Graphics getGraphics( )思路方法作用:得到画布中脱机屏幕上用于作图 Graphics 对象 3、思路方法flushGraphics思路方法原型public void flushGraphics( )思路方法作用:要求刷新屏幕这时脱机屏幕上图像会被绘制到真实屏幕上 4、思路方法flushGraphics思路方法原型public void flushGraphics( x, y, width, height)思路方法作用:要求刷新屏幕上指定区域这时脱机屏幕上指定区域图像会被绘制到真实屏幕上 5、思路方法getKeyStates思路方法原型public getKeyStates( )思路方法作用:得到按键状态 2、GameCanvas是为了方便游戏开发Canvas类从类实现上可以看出GameCanvas类是Canvas类sub它继承了MIDP1.0中在使用Javax.microedition.lcdui.Canvas类因此Canvas备置思路方法可以直接使用GameCanvas 3、GameCanvas最大特征就是支持取得offscreen缓冲和按键状态 1、所谓offscreen缓冲是指在画面以外地方描绘然后将描绘结果发送到实际画面系统因此有了这个功能就可以防止显示动画时画面飘飞现象了 2、在以前MIDP1.0应用中按键被按下时JVM需要调出keyPressed思路方法这样很容易明白按键状态这种思路方法被称为event驱动但此思路方法在按键被按下后到思路方法执行存在时间滞留现象很难直接体现游戏中动作因此GameCanvas可以随意检查按键状态和描绘更新Canvas类按键被按下时思路方法keypressed和再描绘思路方法pa通过JVM判断执行因此和游戏状态紧密连接比较难而GameCanvas类开发者可以随时查看按键状态执行再描绘因此是方便对游戏状况进行管理思路方法 4、代码举例 1、按键状态 // 获取按键状态 keyStates = getKeyStates; // 根据按键状态做相应处理 ((keyStates & LEFT_PRESSED) != 0) { // 左键按下时候处理代码 } ((keyStates & RIGHT_PRESSED) != 0) { // 右键按下时候处理代码 } ((keyStates & UP_PRESSED) != 0) { // 向上键按下时候处理代码 } ((keyStates & DOWN_PRESSED) != 0) { // 向下键按下时候处理代码 } 2、重绘 // 更新描绘内容 flushGraphics; 0
相关文章读者评论发表评论 |