`
touchmm
  • 浏览: 1039821 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

j2me学习十_MIDP2.0学习

 
阅读更多

GameCanvas及Sprite类的使用

import javax.microedition.lcdui.Graphics;
import javax.microedition.lcdui.Image;
import javax.microedition.lcdui.game.GameCanvas;
import javax.microedition.lcdui.game.Sprite;


public class MyGameCanvas extends GameCanvas implements Runnable {
static final int UP=0;
static final int DOWN=1;
static final int LEFT=2;
static final int RIGHT=3;
int aup[]={12,12,13,13,14,14,15};
int adown[]={0,1,2,3};
int aleft[]={4,4,5,5,6,6,7,7};
int aright[]={8,9,10,11};
int mSpeed=5;
int mDir=0;
private boolean RUN=true;
private Graphics g;
private Sprite mHero;
private Image img;
public MyGameCanvas()
{
super(true);
g=this.getGraphics();
try {
img=Image.createImage("/hero.png");

} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}

mHero=new Sprite(img,32,48);
System.out.println("执行到我了");
mHero.setPosition(20, 50);
new Thread(this).start();
}
public void moveto(int dir) {
// TODO Auto-generated method stub
switch(dir){
case UP:
if(dir!=mDir)
mHero.setFrameSequence(aup);
mHero.move(0, -mSpeed);
break;
case DOWN:
if(dir!=mDir)
mHero.setFrameSequence(adown);
mHero.move(0, mSpeed);
break;
case LEFT:
if(dir!=mDir)
mHero.setFrameSequence(aleft);
mHero.move(-mSpeed, 0);
break;
case RIGHT:
if(dir!=mDir)
mHero.setFrameSequence(aright);
mHero.move(mSpeed, 0);
break;
}
mDir=dir;
mHero.nextFrame();
}
public void handleKey(){
int key=getKeyStates();
if((key&UP_PRESSED)!=0) moveto(UP);
if((key&DOWN_PRESSED)!=0) moveto(DOWN);
if((key&LEFT_PRESSED)!=0) moveto(LEFT);
if((key&RIGHT_PRESSED)!=0) moveto(RIGHT);
}
public void run() {
while (RUN) {
try {
g.setColor(0);
g.fillRect(0, 0, this.getWidth(), this.getHeight());
handleKey();
mHero.paint(g);
this.flushGraphics();/**/
Thread.sleep(100);

} catch (Exception e) {
// TODO: handle exception
}

}

}
}
运行使用的效果是人物精灵的行走。
终于知道怎么去调试j2me项目了。。。。
在运行过程中,Console窗口中会出调试信息,可以根据信息去debug,
例如,当我运行到这一步的时候,
mHero=new Sprite(img,32,40);
意外中断了,抛出异常IllegalArgumentException,
查看文档,原来是尺寸不匹配,修改一下,编译通过~

分享到:
评论

相关推荐

    J2me_midp2_0_souce_code.rar_com/sun/midp/jadto_j2me PublicKey_mi

    总之,这个压缩包提供的 J2ME MIDP 2.0 源代码是一个宝贵的资源,它涵盖了 JAD 处理和 PKI 安全方面的实现,对于想要深入 J2ME 开发、理解和优化其性能的开发者来说,这是一个难得的学习机会。通过仔细研究这些源码...

    j2me Game Development with MIDP2.0

    《J2ME游戏开发与MIDP2.0》是一本深入探讨Java 2 Micro Edition (J2ME) 平台上游戏开发的专业书籍,尤其针对Mobile...通过阅读这本书,你不仅可以学习到J2ME和MIDP2.0的基础知识,还能掌握开发出色移动游戏的实战技巧。

    J2me中文教程MIDP2.0

    ### J2ME中文教程MIDP 2.0 #### 概述 ...通过学习这些内容,开发者能够更好地掌握MIDP 2.0的核心概念和技术细节,从而开发出高质量的移动应用程序。希望本文档能够帮助读者在移动开发领域取得更大的成就。

    j2me的midp2.0所有源代码

    这个压缩包文件包含了J2ME MIDP 2.0的所有源代码,对于想要深入理解J2ME、特别是MIDP 2.0特性的开发者来说,是一份非常宝贵的资源。 MIDP 2.0主要包含以下几个关键部分: 1. 用户界面:MIDP 2.0提供了一个轻量级的...

    J2ME游戏实例(MIDP2.0)

    这是本人利用MIDP2.0技术制作的一个RPG游戏实例,实现了人物在地图场景中的走动与碰撞检测功能。

    基于JAVA基于J2ME的手机游戏开发的毕业设计,游戏采用了J2ME的游戏框架MIDP2.0,使用了J2ME的游戏引擎LWJGL

    游戏采用了J2ME的游戏框架MIDP2.0,使用了J2ME的游戏引擎LWJGL,实现了游戏的基本功能,包括游戏场景的切换、游戏角色的控制、游戏物品的收集、游戏敌人的攻击等。游戏设计了简单的游戏菜单、游戏控制面板、游戏分数...

    j2me的midp2.0的源代码

    总之,J2ME MIDP 2.0为移动开发提供了一套强大的工具集,使得开发者能够创建功能丰富的应用程序,而下载的源代码则为学习和开发提供了实操的基础。通过研究这些源代码,开发者可以提高其编程技巧,同时理解如何在...

    J2ME 中文教程 MIDP2.0

    **J2ME中文教程 MIDP2.0** Java 2 Micro Edition(J2ME)是Java平台的一个子集,主要用于嵌入式设备和移动设备,如手机和智能家电。MIDP(Mobile Information Device Profile)2.0是J2ME中的一个重要配置,它提供了...

    J2ME_游戏开发_with_MIDP2

    J2ME游戏开发与MIDP2.0 J2ME(Java 2 Micro Edition)是一种专为嵌入式和移动设备设计的Java平台。MIDP(Mobile Information Device Profile)是J2ME的一个重要组成部分,专门用于移动设备的应用开发,尤其是游戏...

    J2ME APICHM.zip_api j2me_j2me_j2me api c_j2me api chm_java api

    - **JSR (Java Specification Requests)**: JSR是Java社区过程的一部分,定义了特定的功能扩展,例如JSR-118(MIDP 2.0)和JSR-82(Java Bluetooth API)。 6. **CHM格式** CHM是Microsoft的 Compiled HTML Help ...

    MIDP2.0API

    MIDP2.0 API,J2me必用,MIDP2.0 API,MIDP2.0 APIMIDP2.0 API

    midp2.0 spec kor_j2me_源码

    **Java ME MIDP 2.0规范详解** Java Micro Edition(J2ME)是Java平台的一个子集,专为资源有限的嵌入式设备而设计,如移动电话、智能家电和电子游戏机等。MIDP(Mobile Information Device Profile)是J2ME中的一...

    MIDP2.0 稀有资源 与你分享

    **MIDP2.0(Mobile Information Device Profile 2.0)详解** MIDP2.0是Java ME(Micro Edition)平台的一个重要组件,它为移动设备提供了丰富的应用程序开发框架。这一版本的MIDP(Mobile Information Device ...

    J2ME源码midp2.0

    不多说了,想要的都知道.

    midp2.0教程

    ### MIDP2.0教程概览与核心知识点 ...通过深入理解MIDP2.0的核心概念、掌握J2ME游戏开发的基础知识、熟悉MIDP2.0的新增功能,以及应对游戏开发中的常见挑战,开发者将能够创作出既具创意又富有娱乐性的手机游戏。

    J2ME MIDP 2.0 无线设备编程的一些源码JAVA源码

    J2ME MIDP 2.0 无线设备编程的一些源码JAVA源码 J2ME MIDP 2.0 无线设备编程的一些源码,像是一本书中的实例,都比较简单,基础性东西,新手可能会喜欢,附有少量游戏代码,截图上有具体的内容。 J2ME MIDP 2.0 无线...

    深入MIDP2.0(2) - CLDC与MIDP工具类别

    《深入MIDP2.0(2) - CLDC与MIDP工具类别》这篇电子文档聚焦于移动设备上的应用程序开发,特别是针对Java ME(Java Micro Edition)平台的MIDP2.0(Mobile Information Device Profile)和CLDC(Connected Limited ...

    android平台中使用j2me MIDP2.0中GameAPI

    在Android平台上,开发游戏时有时会遇到需要复用或移植早期J2ME(Java 2 Micro Edition)MIDP 2.0中的Game API的情况。MIDP 2.0是J2ME针对移动设备提供的一套游戏开发框架,其中Game API提供了丰富的图形和动画处理...

    j2me_android_sdk_1.0

    Android下实现的J2ME API类库,使用此SDK可以无缝将你J2ME APP移植成android APP, 支持MIDP2.0、cldc1.0,WMA,jsr75等常用API 20111204更新新版: 1 JAD.MF文件:增加屏幕方向设置 2 JAD.MF文件:增加游戏专用摇杆...

Global site tag (gtag.js) - Google Analytics