⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 walkcatmidlet.java

📁 本程序是一个演示动画效果的程序
💻 JAVA
字号:
/*
 * MIDlet 主类WalkCatMIDlet.java
 * @author Shengli Lin
 */


import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;

public class WalkCatMIDlet
    extends MIDlet
    implements CommandListener {

// 游戏对象声明代码段

  /**
   * 停止游戏命令对象
   */
  private Command exitCommand = new Command("Exit", Command.EXIT, 99);

  /**
   * 开始游戏命名对象
   */
  private Command playCommand = new Command("Play", Command.SCREEN, 1);

  /**
   * 暂停游戏命令对象
   */
  private Command pauseCommand = new Command("Pause", Command.SCREEN, 1);

  /**
   * 重新开始游戏命令对象
   */
  private Command newCommand = new Command("Play Again", Command.SCREEN,
                                           1);
  //初始化画布对象
  WalkCatCanvas catCanvas = null;

//初始化线程对象
  WalkThread walkThread = null;

  /**
   * 在MIDlet构造器中初始化画布对象并在画布对象中添加命令对象
   */
  public WalkCatMIDlet() {
    catCanvas = new WalkCatCanvas(this);
    catCanvas.addCommand(exitCommand);
    catCanvas.addCommand(playCommand);
    catCanvas.setCommandListener(this);
  }

  /**
   * 切换命令到重新开是状态.
   */
  void setNewCommand() {
    catCanvas.removeCommand(pauseCommand);
    catCanvas.removeCommand(playCommand);
    catCanvas.addCommand(newCommand);
  }

  /**
   * 切换命令到play 命令状态
   */
  void setGoCommand() {
    catCanvas.removeCommand(pauseCommand);
    catCanvas.removeCommand(newCommand);
    catCanvas.addCommand(playCommand);
  }

  /**
   * 切换命令到pause 命令状态
   */
  void setPauseCommand() {
    catCanvas.removeCommand(newCommand);
    catCanvas.removeCommand(playCommand);
    catCanvas.addCommand(pauseCommand);
  }

  //----------------------------------------------------------------
  /**
   * MIDlet开始方法
   */
  public void startApp() throws MIDletStateChangeException {
    walkThread = new WalkThread(catCanvas);
    catCanvas.start();
  }

  /**
   *  销毁MIDlet对象并作垃圾回收(Garbage Collection)
   */
  public void destroyApp(boolean unconditional) throws
      MIDletStateChangeException {
    catCanvas = null;
    System.gc();
  }

  /**
   *  暂停游戏执行
   */
  public void pauseApp() {
    setGoCommand();
  }

  /*
   * 处理画布中的命令对象事件
   */
  public void commandAction(Command c, Displayable s) {
    if (c == playCommand) { //开始游戏
      catCanvas.removeCommand(playCommand);
      catCanvas.addCommand(pauseCommand);
      walkThread.go();
    }
    else if (c == pauseCommand) { //暂停游戏
      catCanvas.removeCommand(pauseCommand);
      catCanvas.addCommand(playCommand);
    }
    else if (c == newCommand) { //重置游戏状态
      catCanvas.removeCommand(newCommand);
      catCanvas.addCommand(playCommand);
      walkThread.go();
    }
    else if (c == exitCommand) { //退出游戏
      try {
        destroyApp(false);
        notifyDestroyed();
      }
      catch (MIDletStateChangeException ex) {}
    }
  }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -