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

📄 gamecanvas.java~1~

📁 在手机游戏中用于实现图片的翻转效果改变图片
💻 JAVA~1~
字号:
import com.nokia.mid.ui.FullCanvas;
import javax.microedition.lcdui.*;
import java.io.*;
import java.util.Timer;
import javax.microedition.rms.*;

public class GameCanvas extends FullCanvas implements Runnable {

    Time1MIDlet maingameMIDlet;
    Base Scene; //界面类
    Thread mainThread; //主线程
    int intNowState;
    int intState;
    int key = 0;
    long LongNowFPS;
    int timeLong = 600;
    int intFPS;
    int intWidth;
    int intHeight;
      public GameCanvas(Time1MIDlet gamecanvas) {
        maingameMIDlet = gamecanvas;
        intWidth = getWidth();
        intHeight = getHeight();
        intFPS = 150;
        intState = intNowState = 0;
        Scene = new Logo(this);
        mainThread = new Thread(this);
        mainThread.start();
           }

    public void exit() {
        Scene.Release();
        intNowState = -1;
        System.gc();
    }
    public void Release() {
        if (Scene != null) {
            Scene.Release();
            System.gc();
        }
        mainThread = null;
    }

    protected void paint(Graphics graphics) {
        if (Scene != null) {
            Scene.Display(graphics);
        }
        String drawSt;
    }

    protected void keyPressed(int keyCode) {
        this.key = keyCode;
    }

    protected void keyReleased(int key) {
        this.key = 0;
    }


    public void run() {
        Thread currentThread = Thread.currentThread();
        while (currentThread == mainThread) {
            long StratTime = System.currentTimeMillis();
            GetScene();
            if (Scene != null) {
                Scene.Update();
                Scene.keyProcess(key);
                this.repaint();
                long EndTime = System.currentTimeMillis();
                LongNowFPS = StratTime - EndTime;
                if (LongNowFPS < intFPS) {
                    try {
                        mainThread.sleep(intFPS - LongNowFPS);
                    } catch (InterruptedException ex) {}
                }
            }
        }
    }

    private void GetScene() {
        if (intNowState != intState) {
            Scene.Release();
            Scene = null;
            System.gc();
            switch (intState) {
            case -1:
                maingameMIDlet.quitApp();
                break;
            case 0:
                Scene = new Logo(this);
                intNowState = 0;
                break;
//            case 1:
//                Scene = new Menu(this);
//                intNowState = 1;
//                break;
//            case 2:
//                Scene = new QianYan(this);
//                intNowState = 2;
//                break;
//            case 6:
//                Scene = new Mian0(this);
//                mian = 1;
//                intNowState = 6;
//                break;
//            case 7:
//                Scene = new Mian1(this);
//                mian = 2;
//                intNowState = 7;
//                break;
//            case 8:
//                Scene = new Tu(this);
//                mian = 3;
//                intNowState = 8;
//                break;
//            case 9:
//                Scene = new Mu(this);
//                mian = 4;
//                intNowState = 9;
//                break;
//            case 10:
//                Scene = new Lei(this);
//                mian = 5;
//                intNowState = 10;
//                break;
//            case 11:
//                Scene = new Huo(this);
//                mian = 6;
//                intNowState = 11;
//                break;
//            case 12:
//                Scene = new Feng(this);
//                mian = 7;
//                intNowState = 12;
//                break;
//            case 13:
//                Scene = new Guang(this);
//                mian = 8;
//                intNowState = 13;
//                break;
//            case 14:
//                Scene = new An(this);
//                mian = 9;
//                intNowState = 14;
//                break;
//            case 15:
//                Scene = new Mian9(this);
//                intNowState = 15;
//                break;
            }
        }
    }
}

⌨️ 快捷键说明

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