当前位置:七道奇文章资讯编程技术Java编程
日期:2011-03-22 16:13:00  来源:本站整理

<b>J2ME游戏APIのGameCanvas游戏画布</b>[Java编程]

赞助商链接



  本文“<b>J2ME游戏APIのGameCanvas游戏画布</b>[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:

GameCanvas是MIDP2.0的一个最主要元素,提高了J2ME游戏开辟的便利性,相关于MIDP1.0,降低了J2ME游戏开辟的难度跟本钱,本文专门详述了GameCanvas游戏画布的有关内容,对GameCanvas有个大约的解析.

1、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(int x, int y, int width, int height),办法作用:要求革新屏幕上指定区域,这时脱机屏幕上指定区域的图象会被绘制到真实屏幕上.

5、办法getKeyStates,办法原型public int getKeyStates( ),办法作用:得到按键状况.

2、GameCanvas是为了便利游戏开辟的Canvas类,从类的实现上,可以看出GameCanvas类是Canvas类的subclass,它担当了MIDP1.0中在利用的javax.microedition.lcdui.Canvas类,因此Canvas备置的办法可以直接利用GameCanvas.

3、GameCanvas最大的特点,就是支持获得offscreen缓冲和按键的状况.

1、所谓offscreen缓冲,是指在画面以外的地方描绘,然后将描绘后果发送到实际画面的系统,因此,有了这个功效,便可以避免显示动画时的画面飘飞现象了.

2、在从前的MIDP1.0利用中,按键被按下时,JVM需求调出keyPressed办法,这样很简单懂得按键的状况.这种办法被称为event驱动,但此办法在按键被按下后到办法的履行存在时间滞留现象,很难直接表现游戏中的行动,因此GameCanvas可以随便查抄按键状况和描绘的更新.Canvas类,按键被按下时的办法keypressed与再描绘的办法paint通过JVM的判断履行,因此与游戏状况的精密衔接对比难.而GameCanvas类,开辟者可以随时查看按键的状况,履行再描绘,因此是便利对游戏情况举行管理的办法.

4、代码示例

1、按键状况

// 获得按键状况
        int keyStates = getKeyStates();

// 按照按键状况做呼应处理
      if ((keyStates & LEFT_PRESSED) != 0) {
        // 左键按下时刻处理代码
      } else if ((keyStates & RIGHT_PRESSED) != 0) {
         // 右键按下时刻处理代码
      } else if ((keyStates & UP_PRESSED) != 0) {
         // 向上键按下时刻处理代码
      } else if ((keyStates & DOWN_PRESSED) != 0) {
         // 向下键按下时刻处理代码
      }

2、调用重绘

// 更新描绘内容   flushGraphics();


  以上是“<b>J2ME游戏APIのGameCanvas游戏画布</b>[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
  • <b>hosts是什么 hosts文件在什么位置 若何改正hosts</b>
  • <b>在 Windows 8 中手动安装语言包</b>
  • <b>五个常见 PHP数据库问题</b>
  • Windows中Alt键的12个高效快速的利用本领介绍
  • <b>MySQL ORDER BY 的实现解析</b>
  • <b>详解MySQL存储历程参数有三种范例(in、out、inout)</b>
  • <b>Win8系统恢复出来经典的开始菜单的办法</b>
  • <b>Win8系统花屏怎么办 Win8系统花屏的办理办法</b>
  • <b>Windows 7系统下无线网卡安装</b>
  • <b>为什么 Linux不需求碎片整理</b>
  • <b>Windows 8中删除账户的几种办法(图)</b>
  • <b>教你如安在win7下配置路由器</b>
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .