课程设计报告模拟幸运52游戏.doc

上传人:仙人指路1688 文档编号:4081042 上传时间:2023-04-03 格式:DOC 页数:9 大小:187.50KB
返回 下载 相关 举报
课程设计报告模拟幸运52游戏.doc_第1页
第1页 / 共9页
课程设计报告模拟幸运52游戏.doc_第2页
第2页 / 共9页
课程设计报告模拟幸运52游戏.doc_第3页
第3页 / 共9页
课程设计报告模拟幸运52游戏.doc_第4页
第4页 / 共9页
课程设计报告模拟幸运52游戏.doc_第5页
第5页 / 共9页
点击查看更多>>
资源描述

《课程设计报告模拟幸运52游戏.doc》由会员分享,可在线阅读,更多相关《课程设计报告模拟幸运52游戏.doc(9页珍藏版)》请在三一办公上搜索。

1、 Java编写幸运52游戏摘 要:本文主要介绍了运用JAVA制作一个小游戏的方法和思路。该游戏主要运用了java的gui和事件触发等运用关键词: JAVA,幸运52,游戏,GUI1 前 言 JAVA是由SUN公司开发的一种面向对象的程序设计语言,平台无关性是JAVA的一大特点。从第一台数字电子计算机诞生以来,计算机设计语言经历了从低级语言到高级语言的巨大发展,随着软件开发技术的不断进步,从面向结构的程序设计思想,到面向对象的程序设计思想,为了适应软件开发的需要,JAVA作为一个面向对象程序设计语言的使用越来越广泛。 JAVA的学习主要体现在运用,本课程设计介绍了JAVA的一个应用,既“幸运52

2、”模拟游戏,这个小游戏制作所需要注意的两个地方分别是:一.游戏界面的设计,如开始界面,运行界面,结束界面。二.事件的触发,即按下开始按钮的事件,输入商品价格事件。在后面对于设计思路的介绍中都进行了解释和解决。2 课程设计内容本课程设计的内容是运用JAVA语言编写一个幸运52模拟猜价游戏。具体要求如下:1创建一个用于模拟幸运52游戏的应用程序。2游戏者点击开始游戏按钮,然后程序产生一界面,该界面显示某种商品的图像和其名称,并提示游戏者输入对商品的估价。3当游戏者输入某个估价,然后点击“确定”按钮,运行程序,若游戏者输入的价格和商品真实价格不相等,程序就弹出对话框提示输入的价格偏高或者偏低。若输入

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

4、源代码的编译器,运行JAVA字节码的解释器,以及测试JAVA Applet的Applet阅读器,还有其他一些有用的工具。JDK主要是通过DOS命令行,在DOS环境下进行JAVA程序的编译和运行。 JCreator是右Xinox软件公司开发的一个可视化的JAVA程序集成开发环境,它给用户提供了包括工程管理,工程模块,代码实现,代码调试器,以及完成客户化的用户界面等功能。JCerator对系统要求比较底,运行速度比较快。 JBuilder是由Borland公司开发的一款功能强大的可视化JAVA集成开发环境,可以快速的开发包括复杂企业级应用系统在内的各种JAVA程序,包括独立程序运行。Applet程

5、序,Servlet,JSP,EJB,WebSsrvice等。 本次实验使用的比较全面的Jbuilder。4.功能模块描述 本程序设计的小游戏主要分成:界面设计、事件触发器、初始化商品信息、游戏胜利判断和结果显示五个模块。分别表述如下:4.1 界面设计界面设计是对游戏运行的界面和界面格式进行规划,设计思想要求有3个显示界面,第一个为“开始界面”,第二个为“展示商品信息界面”,第三个为“估价结果界面”具体代码如下:public class Lucky52 extends Frame implements ActionListener Panel pnlNorth = new Panel(); Pa

6、nel 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(在此

7、输入你的估价:); 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.s

8、etLayout(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(

9、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(pnl

10、Btn,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

11、.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 windowClo

12、sing(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 )

13、 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.

14、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 游戏胜利与否处理 如果输入的价格相等,则显示“猜对

15、了,恭喜你”;否则提示猜的价格偏高或偏低。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 m

16、ain(String args) new Lucky52(); 5结果显示程序运行的结果如下所述:点击开始输入400进行估价,结果;输入3000,结果:输入2400; 6 小结 通过这个小游戏,对JAVA 的GUI和事件触发等有了一个更深层次的理解,尤其是俩者的结合更是理解了不少。参考文献1卷一 第八版,Cay S.Horstmann & Gary Cornell著,机械工业出版社,2004.72,第一版,陈轶,姚晓昆主编,清华大学出版社,2006附录:源代码/52 gamesimport java.awt.*; import javax.swing.*; import java.awt.event.*;

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

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号