当前位置:编程学习 > JSP >>

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

答案:在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();
      }
    }

 

 
  }
}

上一个:在J2ME中实现欢迎界面(附源代码)
下一个:怎样优化J2ME程序当中的paint()函数

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,