小动物大比拼程序设计论文Word文档格式.docx

上传人:b****4 文档编号:7797034 上传时间:2023-05-09 格式:DOCX 页数:16 大小:124.10KB
下载 相关 举报
小动物大比拼程序设计论文Word文档格式.docx_第1页
第1页 / 共16页
小动物大比拼程序设计论文Word文档格式.docx_第2页
第2页 / 共16页
小动物大比拼程序设计论文Word文档格式.docx_第3页
第3页 / 共16页
小动物大比拼程序设计论文Word文档格式.docx_第4页
第4页 / 共16页
小动物大比拼程序设计论文Word文档格式.docx_第5页
第5页 / 共16页
小动物大比拼程序设计论文Word文档格式.docx_第6页
第6页 / 共16页
小动物大比拼程序设计论文Word文档格式.docx_第7页
第7页 / 共16页
小动物大比拼程序设计论文Word文档格式.docx_第8页
第8页 / 共16页
小动物大比拼程序设计论文Word文档格式.docx_第9页
第9页 / 共16页
小动物大比拼程序设计论文Word文档格式.docx_第10页
第10页 / 共16页
小动物大比拼程序设计论文Word文档格式.docx_第11页
第11页 / 共16页
小动物大比拼程序设计论文Word文档格式.docx_第12页
第12页 / 共16页
小动物大比拼程序设计论文Word文档格式.docx_第13页
第13页 / 共16页
小动物大比拼程序设计论文Word文档格式.docx_第14页
第14页 / 共16页
小动物大比拼程序设计论文Word文档格式.docx_第15页
第15页 / 共16页
小动物大比拼程序设计论文Word文档格式.docx_第16页
第16页 / 共16页
亲,该文档总共16页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

小动物大比拼程序设计论文Word文档格式.docx

《小动物大比拼程序设计论文Word文档格式.docx》由会员分享,可在线阅读,更多相关《小动物大比拼程序设计论文Word文档格式.docx(16页珍藏版)》请在冰点文库上搜索。

小动物大比拼程序设计论文Word文档格式.docx

ChoiceString[]box

JTextArea显示纯文本区域

JButton帮助

JButton清除

JButton选择加监听

成员方法initial()JOptionPane关闭窗口消息

(定义类的功能、JPanelchoicePanel=newJPanel()定义面板

初始化界面)(将Choice及三个按钮添加到面板)

JScrollPaneresultPanel=newJScrollPane(ta)

(把文本域添加到一个科滚动面板里)布局

JPaneltotalPanel=newJPanel()定义面板

Game类(把显示分数的lable添加到面板)

getBoxPeop(Stringstr)定义用户方法

方法getResult()调用

(获得结果的方法)

getBoxComp()电脑随机取数

Win

check(intboxPeop,intboxComp)equal

(主要比较方法)lost

getTotal()(显示得分)调用getPoint()

Main方法Gamegame=newGame();

四、程序的执行流程

String[]box(四选一)

调用getResult()

JTextArea作用(显示结果)

Ta.setText("

"

);

win=0;

loss=0;

equal=0;

lb.setText(getTotal())

JOptionPane.showMessageDialog

六、游戏软件的主要界面截图

主要的功能界面截图要加文字描述。

1、初始化界面

2、确定选择动物及结果表示

3、帮助界面

4、清除界面

5、退出界面

六、程序代码:

这部分的要求附完整的程序代码,并且代码中必须加必要的注释。

importjava.util.Random;

importjavax.swing.*;

importjava.awt.*;

//导入窗体工具

importjava.awt.event.*;

//导入awt事件中所有的类

publicclassGameextendsJFrame//Game继承父类JFrame

{

privateRandomr;

//创建一个新的随机数生成器

privatefinalString[]box={"

大象"

"

老虎"

狐狸"

老鼠"

};

//string数组

privateJComboBoxchoice;

//将按钮或可编辑字段与下拉列表组合

privateJTextAreata;

//JTextArea是一个显示纯文本的多行区域

privateJLabellb;

//用于短文本字符串或图像或二者的显示区

privateintwin=0;

privateintloss=0;

privateintequal=0;

publicGame()//构造方法是用来构造类的对象

{

super("

小动物大比拼"

//super是关键字表示直接父类的方法实现对类game构造方法的调用

initial();

//调用initial方法,就是下面定义的那个.该方法主要是初始界面

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

setSize(300,200);

//设置窗体大小

setLocation(530,260);

//显示在桌面的位置

setVisible(true);

//窗体可见

}

publicvoidinitial()//通过类的实例(某个对象)调用的方法

r=newRandom();

choice=newJComboBox();

//初始化choice这个下拉框

for(inti=0;

i<

box.length;

i++)//为下拉框赋值

choice.addItem(box[i]);

//向滚动列表的末尾添加指定的项

choice.setBackground(Color.pink);

ta=newJTextArea(7,9);

//初始化文本域7行9列

ta.setEditable(false);

//让用户不能编辑文本域即不能在里面写东西

JButtonhelpbut=newJButton("

帮助"

//帮助按钮的创建于监听及消息窗口内容

helpbut.addActionListener(newActionListener(){

publicvoidactionPerformed(ActionEvente){

JOptionPane.showMessageDialog(null,"

选择一个动物与电脑选择的动物进行比拼,大象控制老虎和狐狸,老虎控制狐狸和老鼠,狐狸控制老鼠,老鼠控制大象"

});

JButtonokBut=newJButton("

选择"

//新建一个选择的按钮

okBut.addActionListener(newActionListener()//给出选择按钮加个监听.如果点击就执行下面这个方法

publicvoidactionPerformed(ActionEvente)

ta.setText(getResult());

//给文本域赋值.就是显示结果

lb.setText(getTotal());

//给分数label赋值.就是显示分数

JButtonclearBut=newJButton("

清除"

//新建一个清除分数的按钮

clearBut.addActionListener(newActionListener()//加监听

publicvoidactionPerformed(ActionEvente)//用户点击了就执行这个方法

ta.setText("

//给文本域赋值为,就是清除他的内容

win=0;

//win赋值为0

equal=0;

//给显示分数那个文本赋值.因为前面已经都赋值为0了.所以这句就是让显示分数那都为0

addWindowListener(newWindowAdapter(){//关闭窗口弹出对话框及内容

publicvoidwindowClosing(WindowEvente){

JOptionPane.showMessageDialog(null,"

倩雪:

好开心啊!

我会在这里等你回来!

);

//设置对话框并为对话框设置内容showMessageDialog告知用户某事已发生。

lb=newJLabel(getTotal());

//初始化显示分数

JPanelchoicePanel=newJPanel();

//定义一个面板

choicePanel.add(choice);

//把下拉框加到面板里

choicePanel.add(okBut);

//把选择按钮加到面板里

choicePanel.add(clearBut);

//把清除分数按钮加到面板里

choicePanel.add(helpbut);

//把帮助按钮加到面板里

JScrollPaneresultPanel=newJScrollPane(ta);

//把文本域加到一个可滚动的面板里面.JScrollPane就是可滚动的面板.

JPaneltotalPanel=newJPanel();

//再定义个面板.用来显示分数

totalPanel.add(lb);

//把那个显示分数的label加到里面去

Containerc=getContentPane();

//下面就是布局了

c.setLayout(newBorderLayout());

c.add(choicePanel,BorderLayout.NORTH);

c.add(resultPanel,BorderLayout.CENTER);

c.add(totalPanel,BorderLayout.SOUTH);

publicStringgetResult()//获得结果的方法返回值是一个String..这个返回值会用来显示在文本域里面

Stringtmp="

;

intboxPeop=choice.getSelectedIndex();

//获得你选择的的索引.从0开始的.没有就返回-1

intboxComp=getBoxComp();

//获得电脑出的索引.

tmp+="

倩雪选择:

\t"

+box[boxComp];

\n你选择:

+box[boxPeop];

\n结果:

+check(boxPeop,boxComp);

returntmp;

publicintgetBoxPeop(Stringstr)

returnchoice.getSelectedIndex();

publicintgetBoxComp()//就是产生一个0-3的随机数

returnr.nextInt(4);

//Random的nextInt(inti)方法就是产生一个[0-i)的随机整数}

publicStringcheck(intboxPeop,intboxComp)

Stringresult="

if(boxPeop==boxComp)

result="

真有默契,一样了!

equal++;

elseif(boxPeop==0&

&

boxComp==1||boxPeop==0&

boxComp==2||boxPeop==1&

boxComp==3||boxPeop==2&

boxComp==3||boxPeop==3&

boxComp==0)

result="

恭喜你,你赢了!

win++;

boxComp==3||boxPeop==1&

boxComp==0||boxPeop==2&

boxComp==1||boxPeop==3&

boxComp==2)

很遗憾,你输了!

loss++;

returnresult;

publicintgetPoint(){

return(win-loss)*10;

publicStringgetTotal()

return"

赢:

+win+"

平:

+equal+"

输:

+loss+"

得分:

+getPoint();

publicstaticvoidmain(String[]args)

Gamegame=newGame();

}

7、总结

通过此游戏让我了解了以前没有用过的知识,在制作游戏时虽然问题多多。

但是通过查帮助文档以及询问别人,问题都差不多解决了,虽然没有做出来自己心中所想,但相对自己来说,这是一种进步,以下是制作游戏过程中注意到的

showConfirmDialog询问一个确认问题,如yes/no/cancel。

showMessageDialog告知用户某事已发生

showXxxDialog方法返回整数时,可能的值为:

YES_OPTIONNO_OPTIONCANCEL_OPTIONOK_OPTIONCLOSED_OPTION

getDefaultCloseOperation返回用户在此窗体上发起"

close"

时执行的操作。

JComboBox将按钮或可编辑字段与下拉列表组合

JTextAreaJTextArea是一个显示纯文本的多行区域

JLabel用于短文本字符串或图像或二者的显示区

构造方法:

构造方法是用来构造类的对象的,方法名和类名相同没有返回值。

一般用new构造方法名()来创建该类的对象。

在不写构造方法的情况下会有一个默认的无参构造方法。

成员方法:

简单地说就是可以通过类的实例(某个对象)调用的方法,也就是我们正常情况下使用的方法。

addItem向滚动列表的末尾添加指定的项。

JButtonclearBut=newJButton("

新建一个清除分数的按钮

clearBut.addActionListener(newActionListener()添加监听

布局Containerc=getContentPane();

c.add(choicePanel,BorderLayout.NORTH);

Container添加到容器中的组件放在一个列表中。

列表的顺序将定义组件在容器内的正向堆栈顺序。

如果将组件添加到容器中时未指定索引,则该索引将被添加到列表尾部(此后它位于堆栈顺序的底部)。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 工程科技 > 能源化工

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2