课程设计报告模拟幸运52游戏.doc_第1页
课程设计报告模拟幸运52游戏.doc_第2页
课程设计报告模拟幸运52游戏.doc_第3页
课程设计报告模拟幸运52游戏.doc_第4页
课程设计报告模拟幸运52游戏.doc_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

java编写幸运52游戏摘 要:本文主要介绍了运用java制作一个小游戏的方法和思路。该游戏主要运用了java的gui和事件触发等运用关键词: java,幸运52,游戏,gui1 前 言 java是由sun公司开发的一种面向对象的程序设计语言,平台无关性是java的一大特点。从第一台数字电子计算机诞生以来,计算机设计语言经历了从低级语言到高级语言的巨大发展,随着软件开发技术的不断进步,从面向结构的程序设计思想,到面向对象的程序设计思想,为了适应软件开发的需要,java作为一个面向对象程序设计语言的使用越来越广泛。 java的学习主要体现在运用,本课程设计介绍了java的一个应用,既“幸运52”模拟游戏,这个小游戏制作所需要注意的两个地方分别是:一.游戏界面的设计,如开始界面,运行界面,结束界面。二.事件的触发,即按下开始按钮的事件,输入商品价格事件。在后面对于设计思路的介绍中都进行了解释和解决。2 课程设计内容本课程设计的内容是运用java语言编写一个幸运52模拟猜价游戏。具体要求如下:1创建一个用于模拟幸运52游戏的应用程序。2游戏者点击开始游戏按钮,然后程序产生一界面,该界面显示某种商品的图像和其名称,并提示游戏者输入对商品的估价。3当游戏者输入某个估价,然后点击“确定”按钮,运行程序,若游戏者输入的价格和商品真实价格不相等,程序就弹出对话框提示输入的价格偏高或者偏低。若输入的价格和真实价格相等则显示“恭喜你”提示。4游戏者可通过点击面板的关闭按钮随时停止和关闭游戏。3 java的使用简介3.1 java的gui和事件触发器 java的gui包括各种panel,label,bottom等,任何支持gui的操作环境都要不断地监视敲击键盘或点击鼠标这样的时间,操作环境将这些事件报告给正在运行的应用程序,如果有时间产生,每个应用程序将决定如何对他们做出响应。3.2java的开发环境 常见的java开发环境主要有jdk,jcreateor,jbuilder,eclipse等。 jdk是sun公司开发的java开发工具包,它是一个简单的命令工具,主要包括软件库,编译java源代码的编译器,运行java字节码的解释器,以及测试java applet的applet阅读器,还有其他一些有用的工具。jdk主要是通过dos命令行,在dos环境下进行java程序的编译和运行。 jcreator是右xinox软件公司开发的一个可视化的java程序集成开发环境,它给用户提供了包括工程管理,工程模块,代码实现,代码调试器,以及完成客户化的用户界面等功能。jcerator对系统要求比较底,运行速度比较快。 jbuilder是由borland公司开发的一款功能强大的可视化java集成开发环境,可以快速的开发包括复杂企业级应用系统在内的各种java程序,包括独立程序运行。applet程序,servlet,jsp,ejb,webssrvice等。 本次实验使用的比较全面的jbuilder。4.功能模块描述 本程序设计的小游戏主要分成:界面设计、事件触发器、初始化商品信息、游戏胜利判断和结果显示五个模块。分别表述如下:4.1 界面设计界面设计是对游戏运行的界面和界面格式进行规划,设计思想要求有3个显示界面,第一个为“开始界面”,第二个为“展示商品信息界面”,第三个为“估价结果界面”具体代码如下:public class lucky52 extends frame implements actionlistener panel pnlnorth = new panel(); panel pnlcenter = new panel(); panel pnlbottom = new panel(); textfield txtfield = new textfield(10); label lbl1 = new label(幸运52游戏,label.center); label lbl2 = new label(游戏规则:); label lbl3 = new label(1) 点击开始游戏按钮,游戏开始); label lbl4 = new label(2) 对物品的价格进行估计,点击确定按钮查看结果,直到猜对为止); label lbl5 = new label(在此输入你的估价:); jlabel lblimg = new jlabel(待估价的商品,jlabel.center); button btnstart = new button(开始游戏); button btnok = new button(确定); button btncancel = new button(取消); label resultmsg = new label(点击开始游戏按钮可以开始游戏,label.center); private int trueprice = 2400 ; /物品的真实价格 /构造方法用于创建程序界面public lucky52() pnlnorth.setlayout(new gridlayout(4,1); lbl1.setfont(new font(,font.bold,24); pnlnorth.add(lbl1); pnlnorth.add(lbl2); pnlnorth.add(lbl3); pnlnorth.add(lbl4); pnlcenter.setlayout(new borderlayout(); panel pinput = new panel(new flowlayout(flowlayout.left); pinput.add(lbl5); pinput.add(txtfield); pnlcenter.add(pinput,borderlayout.north); pnlcenter.add(lblimg,borderlayout.center); pnlbottom.setlayout(new borderlayout(); panel pnlbtn = new panel(); pnlbtn.add(btnstart); pnlbtn.add(btnok); pnlbtn.add(btncancel); resultmsg.setfont(new font(,font.bold,20); resultmsg.setforeground(color.blue); pnlbottom.add(pnlbtn,borderlayout.north); pnlbottom.add(resultmsg,borderlayout.center); this.add(pnlnorth,borderlayout.north); this.add(pnlcenter,borderlayout.center); this.add(pnlbottom,borderlayout.south);4.2事件触发器 设计按钮触发器,即点击“确定”和“开始游戏”按钮,触发相应事件(代码)执行。/给按钮注册监听器,以响应按钮上的点击动作事件 btnstart.addactionlistener(this); btnok.addactionlistener(this); btncancel.addactionlistener(this); this.settitle(幸运52游戏); this.setbackground(color.light_gray); this.setlocation(200,100); this.setsize(400,400); this.setvisible(true); this.validate(); /以下代码实现:点击窗口关闭按钮时可以退出程序 this.addwindowlistener(new windowadapter() public void windowclosing(windowevent e) system.exit(0); ); / 重写监听器接口中的方法,方法体中安排好点击按钮事件发生后应执行的代码 public void actionperformed(actionevent evt) if(evt.getsource() = btnstart) txtfield.settext(); lbl5.settext(输入你对商品的估价); lblimg.seticon(null); resultmsg.settext(游戏开始,请输入你猜测的价格吧!); initimg(); else if(evt.getsource() = btnok ) int guessprice = 0; try guessprice = integer.parseint(txtfield.gettext().trim(); string guessresult = compareprice(guessprice); resultmsg.settext(guessresult); catch(exception e) system.out.println(程序遇到异常!即将退出应用程序); system.exit(0); else if(evt.getsource() = btncancel) txtfield.settext(); resultmsg.settext(点击开始游戏按钮可以开始游戏); lbl5.settext(在此输入你的估价:); lblimg.seticon(null); 4.3 初始化商品信息(如商品图片)/initimg()方法用于初始化待估价的商品图片 public void initimg() lblimg.seticon(new imageicon(c:documents and settingsadministrator桌面a98.jpg); /商品图片的路径lblimg.sethorizontaltextposition(jlabel.left); 4.5 游戏胜利与否处理 如果输入的价格相等,则显示“猜对了,恭喜你”;否则提示猜的价格偏高或偏低。public string compareprice(int guessprice) if(guessprice = trueprice) /相等的情况return 猜对了,恭喜你!; else if(guessprice trueprice) /大于的情况txtfield.settext(); return 猜的价格过高,请重新猜!; else if(guessprice trueprice) /低于的情况txtfield.settext(); return 猜的价格过低,请再加价!; return 出错了; public static void main(string args) new lucky52(); 5结果显示程序运行的结果如下所述:点击开始输入400进行估价,结果;输入300

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论