在J2ME中实现游戏功能选择界面(附源代码)

J2ME中实现游戏功能选择界面(附源代码)

作者:陈跃峰

出自:http://blog.csdn.net/mailbomb

 

       J2ME游戏中,显示了欢迎界面以后,就应该显示游戏的功能选择界面,实现该界面的方式主要有两种:

1、  使用高级用户界面中的List来进行实现

2、  使用Canvas类来自己绘制一个功能选择界面

为了达到更强的游戏表现效果,经常在开发过程中使用第二种方式来实现游戏功能选择界面。下面是一种实现了使用Canvas绘制功能选择界面的示例。

实现原理:在背景图片上绘制游戏的各个功能菜单,然后使用矩形框来代表用户选中的效果,并根据用户的选择实现选择框的上下移动,具体代码如下:

package welcomecanvas;

 

import javax.microedition.lcdui.*;

 

public class MainCanvas extends Canvas {

  Image image = null;

  /**代表选中项目的索引号码*/

  int index = 1;

 

  public MainCanvas() {

    try{

      image = Image.createImage("/res/menu.png");

    }catch(Exception e){

 

    }

  }

 

  protected void paint(Graphics g) {

    //清屏

    g.setColor(255,255,255);

    g.fillRect(0,0,getWidth(),getHeight());

 

    g.setColor(0,0,0);

 

    //绘制图片

    g.drawImage(image,0,0,Graphics.TOP | Graphics.LEFT);

 

    //绘制矩形

    g.drawRect(39,24 + (index - 1) * 30,100,27);

  }

 

  protected void keyPressed(int keyCode){

    //按下的是数字键2

    if(keyCode == Canvas.KEY_NUM2){

      //判断是否移动到第一个选项

      if(index == 1){

        index = 4;

      }else{

        index--;

      }

    }

    //按下的是数字键8

    if(keyCode == Canvas.KEY_NUM8){

      //判断是否移动到第四个选项

      if(index == 4){

        index = 1;

      }else{

        index++;

      }

    }

 

    //重新绘制屏幕

    repaint();

 

    //如果按下数字键5

    if(keyCode == Canvas.KEY_NUM5){

      //根据选择的不同显示不同的界面

      switch(index){

        case 1:

 

          break;

        case 2:

 

          break;

        case 3:

 

          break;

        case 4:

          CanvasMIDlet.quitApp();

      }

    }

 

 

  }

}

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值