mycanvas.java

来自「Java ME手机应用开发大全一书的配套光盘上的源码」· Java 代码 · 共 96 行

JAVA
96
字号
package bluetoochgame;

import javax.microedition.lcdui.*;
import java.io.*;
import javax.microedition.media.*;
import javax.microedition.io.*;
import java.util.Vector;

public class MyCanvas extends Canvas
    implements Runnable, CommandListener {


  public static String name;

  boolean slepping;
  boolean newGame; //是否是新的游戏
  Display display;
  private GameWorld gameworld;
  public Connection connection;
  private Control control;


  public void start() {
     display.setCurrent(this);
     gameworld = new GameWorld();
     gameworld.start() ;
     Thread t = new Thread(this);
     t.start();

  }

  public MyCanvas(Display display,String name) {

    this.name = name;
    slepping = false;
    this.display = display;
    try {
      jbInit();
    }
    catch (Exception e) {
      e.printStackTrace();
    }
  }





  private void jbInit() throws Exception {
    setCommandListener(this);
    addCommand(new Command("Exit", Command.EXIT, 1));
    addCommand(new Command("Restart", Command.SCREEN, 1));
  }




  public void commandAction(Command command, Displayable displayable) {
    if (command.getLabel().equals("Exit")) {
      BTGame.quitApp();
    }
    if (command.getLabel().equals("Restart")) {

    }
  }

  protected void keyPressed(int keycode)
   {
     gameworld.keyPressed(getGameAction(keycode));
   }


  public void run() {

       while (!slepping) {
        repaint();
         try {
           Thread.sleep(100);
         }
         catch (InterruptedException ie) {}
       }


     }

public void paint(Graphics g)
 {
     g.setColor(0x00000000);
     g.fillRect(0, 0, getWidth(), getHeight());
     gameworld.draw(g) ;
}

  }


⌨️ 快捷键说明

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