?? mainmidp.java
字號:
package LLK;
import javax.microedition.lcdui.*;
import javax.microedition.midlet.*;
import java.lang.Thread;
public class MainMIDP extends MIDlet implements CommandListener,ItemStateListener
{
//顯示控制句柄
private Display m_display;
//游戲顯示對象
private GameCanvas m_GameCanvas;
//啟動log信息畫面
private UICanvas m_uiCanvas;
//標志是否已經運行過一次游戲,用于處理在第二次進入游戲的時候,一些資源不需要初始化
private boolean m_isOnece;
//private UICanvas m_uiCanvase;
//private Command cmExit; // Exit midlet
//private Command cmOk;
//private Command cmBack;
// 選項的主窗口,多個選項列表
private List m_MainList;
private Command m_ML_Select;
// 幫助說明框
private Form m_Form_Help;
private Command m_Frm_Help_Back;
private Command m_Frm_About_Back;
//游戲畫面一節結束后,后游戲一局結束后,在游戲畫面下面的COMMAND顯示的的:繼續和退出 命令按鈕
private Command m_GUIC_Connitnue;
private Command m_GUIC_End;
private String strMsg;
/*
private Form m_frmMain;
//主窗口的選項列表
private ChoiceGroup cgMain;
private Command cmMainMore;
*/
//創建所有的窗口
public void CreateForms()
{
m_MainList = new List("Main", List.IMPLICIT);
//m_ML_Select = new Command("Dodo",Command.ITEM,0);
//m_MainList.addCommand(m_ML_Select);
m_MainList.append("開始游戲",null);
m_MainList.append("游戲說明",null);
m_MainList.append("關于",null);
m_MainList.append("退出",null);
m_GameCanvas = new GameCanvas(this);
new Thread(m_GameCanvas).start();
m_GUIC_Connitnue = new Command("繼續",Command.SCREEN,1);
m_GUIC_End = new Command("退出",Command.SCREEN,1);
m_MainList.setCommandListener(this);
m_GameCanvas.setCommandListener(this);
}
public MainMIDP()
{
super();
m_isOnece = true;
m_display = Display.getDisplay(this);
// CreateForms();
// m_GUIC_Connitnue = new Command("Continue",Command.ITEM,1);
// m_GUIC_End = new Command("Close",Command.ITEM,1);
}
protected void startApp() throws MIDletStateChangeException
{
//m_MainList.getSelectedIndex()
//m_MainList.setItemStateListener(this);
if (m_isOnece)
{
m_uiCanvas = new UICanvas(this);
new Thread(m_uiCanvas).start();
m_display.setCurrent(m_uiCanvas);
}
else
m_display.setCurrent(m_MainList);
}
protected void pauseApp()
{
}
protected void destroyApp(boolean arg0)
{
}
public void commandAction(Command c, Displayable d)
{
int iSelect;
char chV,chV2;
chV = 0x0d;
chV2 = 0x0a;
// System.out.println("MIDP commandAction ");
if ((c == m_ML_Select) || (c == List.SELECT_COMMAND))
{
iSelect = m_MainList.getSelectedIndex();
switch(iSelect)
{
case 0:
m_isOnece = false;
m_GameCanvas.SetCurrentLevel(1);
m_display.setCurrent(m_GameCanvas);
//m_uiCanvase = null;
//System.gc();
break;
case 1://游戲說明
//m_TextBox_Help;m_TB_Help_Back
//m_TextBox_Help = new TextBox("幫助","hehe",100,TextField.ANY);
m_Form_Help = new Form("游戲規則:");
strMsg =
" 需選擇一對相同的圖形," +// chV + chV2 +
"進行連接但此連接是在避" + //chV + chV2 +
"開其他圖形后,呈現的路" + //chV + chV2 +
"徑以不超過二轉彎為條件." + //chV + chV2 +
"如符合規定則消除此一對牌" + //chV + chV2 +
"而得分.每一局里玩家需要" + //chV + chV2 +
"在規定的時間內消除所有的" + //chV + chV2 +
"牌子,當完成任務后,方能" + //chV + chV2 +
"進行下一關." + //chV + chV2 +
" 游戲結束后,會出現當前" + //chV + chV2 +
"的關數、金幣數和所用的時" + //chV + chV2 +
"間.這時,可以選擇繼續玩" + //chV + chV2 +
"游戲或結束游戲." + chV + chV2;
m_Form_Help.append(strMsg);
m_Frm_Help_Back = new Command("返回",Command.SCREEN,1);
m_Form_Help.addCommand(m_Frm_Help_Back);
m_Form_Help.setCommandListener(this);
m_display.setCurrent(m_Form_Help);
break;
case 2:
m_Form_Help = new Form("關于:");
strMsg ="歡迎大家使用";
m_Form_Help.append(strMsg);
m_Frm_About_Back = new Command("返回",Command.SCREEN,1);
m_Form_Help.addCommand(m_Frm_About_Back);
m_Form_Help.setCommandListener(this);
m_display.setCurrent(m_Form_Help);
break;
case 3:
exitMIDlet();
break;
default:
break;
}
} else if (c == m_Frm_Help_Back)
{
m_display.setCurrent(m_MainList);
m_Frm_Help_Back = null;
m_Form_Help = null;
} else if (c == m_Frm_About_Back)
{
m_display.setCurrent(m_MainList);
m_Frm_About_Back = null;
m_Form_Help = null;
}
else if (c == m_GUIC_Connitnue)
{
ShowGameUICommand(false);
m_GameCanvas.SetCurrentLevel(1);
} else if (c == m_GUIC_End)
{
ShowGameUICommand(false);
m_display.setCurrent(m_MainList);
}
}
public void ShowMainCommand()
{
//System.out.println("MainMIDP ShowMainCommand : ");
m_display.setCurrent(m_MainList);
m_uiCanvas = null;
//m_GameCanvas = new GameCanvas(this);
//new Thread(m_GameCanvas).start();
//System.out.println("MainMIDP ShowMainCommand : ");
}
public void ShowGameUICommand(boolean isShow)
{
if (isShow)
{
m_GameCanvas.addCommand(m_GUIC_Connitnue);
m_GameCanvas.addCommand(m_GUIC_End);
}else
{
m_GameCanvas.removeCommand(m_GUIC_Connitnue);
m_GameCanvas.removeCommand(m_GUIC_End);
}
}
public void itemStateChanged(Item item)
{
}
public void exitMIDlet()
{
destroyApp(true);
notifyDestroyed();
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -