一个简单的猜谜游戏的代码(高级用户界面制作)

王朝java/jsp·作者佚名  2006-01-10
窄屏简体版  字體: |||超大  

//MiDlet1.java

package test;

import javax.microedition.midlet.*;

import javax.microedition.lcdui.*;

public class MIDlet1 extends MIDlet {

static MIDlet1 instance;

Displayable1 displayable = new Displayable1(Display.getDisplay(this));

public MIDlet1() {

instance = this;

}

public void startApp() {

Display.getDisplay(this).setCurrent(displayable);

}

public void pauseApp() {

}

public void destroyApp(boolean unconditional) {

}

public static void quitApp() {

instance.destroyApp(true);

instance.notifyDestroyed();

instance = null;

}

}

//Displayable1.java

package test;

import javax.microedition.lcdui.*;

public class Displayable1 extends Form implements CommandListener {

/**题目内容*/

String[] question = {

"花园里都是草。(打一植物)",

"一年后花园里还是草。(也打一植物)",

"来了一只羊。(还打一植物)",

"来了一只狼。(再打一植物)"

};

/**题目选项*/

String[][] answer = {

{"桃花","草莓","梨花","梅花"},

{"人参果","梨树","草莓","野梅花"},

{"野梅花","梨树","草莓","灌木"},

{"桃花","梅花","梨花","扬梅"}

};

/**正确答案的序号,第一个是0,依次类推*/

int[] rightAnswer={3,3,2,3};

ChoiceGroup cgQuestion;

/**当前题目编号*/

int index = 0;

/**确定按键*/

Command cmdOk;

Display display;

public Displayable1(Display display) {

super("猜谜语");

this.display = display;

//创建题目

cgQuestion = new ChoiceGroup(question[index],ChoiceGroup.EXCLUSIVE);

//填充选择项

for(int i = 0;i < 4;i++){

cgQuestion.append(answer[index][i],null);

}

append(cgQuestion);

cmdOk = new Command("确定",Command.OK,1);

addCommand(cmdOk);

setCommandListener(this);

}

public void commandAction(Command command, Displayable displayable) {

//确定按钮

if(command == cmdOk){

//获得用户的选择

int selectIndex = cgQuestion.getSelectedIndex();

//判断是否回答不正确

if(selectIndex != rightAnswer[index]){

Alert a = new Alert("猜谜语","回答错误,请仔细思考!",null,AlertType.INFO);

a.setTimeout(3000);

display.setCurrent(a);

//返回

return;

}

//如果不是最后一个题目,则显示下一题

if(index < question.length - 1){

index++;

//修改界面显示的内容

cgQuestion.setLabel(question[index]);

//修改选项的内容

for(int i = 0;i < 4;i++){

cgQuestion.set(i,answer[index][i],null);

}

}else{//显示成功界面

Alert a = new Alert("猜谜语","游戏成功!",null,AlertType.INFO);

a.setTimeout(Alert.FOREVER);

display.setCurrent(a);

}

}

}

}

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航