`
wuyakenihao
  • 浏览: 30773 次
  • 性别: Icon_minigender_1
  • 来自: 河南
社区版块
存档分类
最新评论

JAVAME学习笔记(5)

阅读更多
如果需要,开发者可以随时调用getKeyStates方法来查询键的状态。getKeyStates()获取游戏的物理键状态。返回值的每个比特位都表示设备上的一个特定的键。如果一个键对应的比特位的值为1,表示该键当前被按下,或者自上次调用此方法后到现在,至少被按下过一次。如果一个键对应的比特位的值为0,表示该键当前未被按下,并且自上次调用此方法后到现在从未被按下过。这种“闭锁行为(latching behavior)”保证一个快速的按键和释放总是能够在游戏循环中被捕获,不管循环有多慢。下面是获取游戏按键的示例:



      // 获得键的状态并存储

      int keyState = getKeyStates();

      if ((keyState & LEFT_KEY) != 0) {

          positionX--;

      }

      else if ((keyState & RIGHT_KEY) != 0) {

          positionX++;

      }



调用这个方法的副作用是不能及时清除过期的状态。在一个getKeyStates调用后如果紧接着另一个调用,键的当前状态将取决于系统是否已经清除了上一次调用后的结果。

某些设备可能无法直接访问键盘硬件,因此,这个方法可能是通过监视键的按下和释放事件来实现的,这会导致getKeyStates可能滞后于当前物理键的状态,因为时延取决于每个设备的性能。某些设备还可能没有探测多个键同时按下的能力。



请注意,除非GameCanvas当前可见(通过调用Displayable.isShown()方法),否则此方法返回0。一旦GameCanvas变为可见,将初始化所有键为未按下状态(0)。

分享到:
评论

相关推荐

    韩顺平编写的java学习笔记(全)

    ### 韩顺平编写的Java学习笔记概览 #### Java平台分类与运行机制 - **J2SE(Java 2 Platform, Standard Edition)**: 标准版Java开发平台,适用于桌面应用程序开发。 - **J2EE(Java 2 Platform, Enterprise ...

    Java 学习笔记

    "Java 学习笔记" Java 是一种面向对象的程序语言,具有跨平台的可能性。Java 的特性包括简单、面向对象、网络、解译、坚固、安全、可携和高效能。Java 平台包括 Java SE、Java EE 和 Java ME, Java SE 是 Java ...

    java私塾学习笔记整理

    ### Java私塾学习笔记整理 #### 第一章:Java入门 **一、Java是什么?** Java是一种广泛使用的高级编程语言,由Sun Microsystems于1995年推出。它旨在为跨平台开发提供一种通用的语言环境,使开发者能够在任何...

    JAVA学习笔记最新ppt版1

    JAVA学习笔记最新ppt版1 JAVA 是一种面向对象的程序语言,具有更高的跨平台可能性。它是 Sun 公司 GreenProject 中撰写 Star7 应用程序的一个程序语言,由 James Gosling 创造。Java 的特性包括简单、面向对象、...

    Java课堂笔记学习Java课堂笔记学习

    ### Java课堂笔记学习 #### 软件定义与软件开发 - **软件**:软件是运行在硬件之上的一组指令集,这些指令集能够完成特定的功能。软件开发过程包括设计和编码两个主要阶段。 #### 编程语言的重要性 - **编程语言...

    java学习笔记

    ### Java学习笔记知识点详解 #### Java 平台与开发概述 - **Java平台分类:** - **J2SE(Java SE):** 标准版,适用于桌面应用程序开发。 - **J2EE(Java EE):** 企业版,专为Web应用和服务端应用程序设计。 -...

    Java学习笔记(必看经典)

    在“Java学习笔记(必看经典)”中,我们可以期待涵盖以下几个关键知识点: 1. **基础语法**:包括变量声明、数据类型(如基本类型和引用类型)、运算符、流程控制语句(如if条件语句、for循环、while循环和switch...

    JAVA基础学习笔记

    【JAVA基础学习笔记】 在JAVA基础的学习中,涵盖了多个核心概念和编程技巧。以下是各章节的重点内容: 第一章:首先,我们需要了解JAVA的技术平台,包括Java SE(标准版)、Java EE(企业版)和Java ME(微型版)...

    java初级学习笔记

    15. **Java SE、Java EE和Java ME**:了解这三种Java平台的不同用途,分别是标准版(SE)用于桌面应用,企业版(EE)用于服务器端应用,微型版(ME)则用于嵌入式设备。 以上只是Java初级学习的部分核心概念,随着...

    java学习笔记.doc

    Java学习笔记概述 Java是一种广泛使用的面向对象的编程语言,由Sun Microsystems开发,现在由甲骨文公司维护。它的设计目标是具有简单性、面向对象、健壮性、安全性、可移植性和高性能等特性。本笔记主要围绕Java的...

    基于java的学习笔记

    这只是Java学习笔记的基础部分,随着深入,还会涵盖类、对象、异常处理、集合框架、IO流、网络编程、多线程、设计模式等多个方面。理解并熟练掌握这些知识点,将有助于你全面地理解和运用Java,成为一名合格的Java...

    JAVA夜未眠(java学习笔记).rar

    10. **JavaSE、JavaEE与JavaME**:分别代表Java的标准版、企业版和微型版,笔记可能阐述它们的区别和应用场景。 11. **实践项目**:为了巩固理论知识,学习笔记通常会包含一些实战项目,如编写简单的桌面应用程序...

    Java+JDK+6学习笔记.pdf

    ### Java+JDK+6 学习笔记知识点详解 #### 一、Java 概述 - **起源与发展:** - Java 最初是由 Sun Microsystems 的 Green Project 开发出来的编程语言,最初是为了创建一个名为 Star7 的应用程序。 - 1995 年 5 ...

    韩顺平java从入门到精通视频教程(全94讲)学习笔记整理(齐全).doc

    本文档是韩顺平 Java 从入门到精通视频教程的学习笔记整理,共 94 讲,涵盖 Java 基础知识、Java SE、Java EE、Java ME 等方向的内容。 Java 基础知识 1. Java 平台:Java 平台有三个主要版本:J2SE、J2EE、J2ME。...

    长期总结的java学习笔记

    【Java学习笔记】 Java是一种广泛使用的编程语言,以其跨平台性、面向对象特性和安全性而闻名。Java的优点在于它的字节码技术使得程序能够在不同操作系统上运行,无需重新编译,这得益于Java虚拟机(JVM)。此外,...

    Java课堂学习笔记-4.26.doc

    【Java学习笔记】 Java是一种广泛使用的面向对象的编程语言,其设计目标是具有高效率、可移植性和可读性。本笔记将围绕Java的历史、重要性、安装配置、语法基础等方面进行详细介绍。 ### 1. Java的发展与意义 ...

Global site tag (gtag.js) - Google Analytics