欢迎来到天天文库
浏览记录
ID:31830759
大小:813.50 KB
页数:37页
时间:2019-01-20
《Java扫雷游戏的设计与实现-课程设计报告报告.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、Java应用技术实训报告题目起讫日期所在院系 学生姓名专业班级学号指导教师职称所在单位年月日一.总体设计本系统共包括14个java源文件和6个图象文件。1.类之间的关系如图1所示。2.java源文件及其功能如表1所示。3.图象文件地雷.gif:地雷方块上的图标。无雷.gif:无雷方块上的图标。触雷.gif:触雷时方块上的图标。探雷错误.gif:游戏结束时,指出标雷错误的图标。微笑脸.gif:按钮上的通常图标。哭脸.gif:触雷时按钮上图标。-36-二、详细设计1.主类Game(1)成员变量(见表2
2、.11)-36-(2)方法(见表2.12)(3)源代码见文件Game.java2.方块Block(1)成员变量(见表2.21)-36-(2)方法(见表2.22)(3)源代码见文件Block.java3.雷区MineSquare(1)成员变量(见表2.31)-36-(2)方法(见表2.32)(3)源代码见文件MineSquare.java4.雷标数目FindAroundMineMarkNumber.java(1)方法(见表2.41)-36-(2)源代码见文件FindAroundMineMarkNumbe
3、r.java5.雷标判断DetermineMineMarkIsRightOrWrong(1)成员变量(见表2.51)(2)方法(见表2.52)(3)源代码见文件DetermineMineMarkIsRightOrWrong.java6.成片挖开区域DetermineDigArea(1)成员变量(见表2.61)(2)方法(见表2.62)-36-(3)源代码见文件DetermineDigArea.java7.无雷连通区FindSafeArea(1)方法(见表2.71)(2)源代码见文件FindSafeAr
4、ea.java8.随机布雷RandomSetMine(1)成员变量(见表2.81)(2)方法(见表2.82)(3)源代码见文件RandomSetMine.java9.周围地雷个数FindAroundMineNumber(1)方法见表(见表2.91)-36-(2)源代码见文件FindAroundMineNumber.java10.显示剩余雷数CountMine(1)成员变量(见表2.101)(2)方法(见表2.102)(3)源代码见文件CountMine.java11.计时器TimeCount(1)成员
5、变量(见表2.111)(2)方法(见表2.112)-36-(3)源代码见文件TimeCount.java12.英雄榜录入对话框Record(1)成员变量(见表2.121)(2)方法(见表2.122)(3)源代码见文件Record.java13.显示英雄榜对话框ShowRecord-36-(1)成员变量(见表2.131)(2)方法(见表2.132)(3)源代码见文件ShowRecord.java14.挖雷成功DecideWinner(1)方法见表(见表2.141)(2)源代码见文件DecideWinne
6、r.java源代码Game.javaimportjava.awt.event.*;importjava.awt.*;importjavax.swing.*;importjavax.swing.border.*;-36-importjava.util.*;importjava.io.*;publicclassGameextendsJFrameimplementsActionListener{JMenuBarbar;JMenufileMenu;JMenuItem初级,中级,高级,扫雷英雄榜;intgrad
7、e=2;MineSquare雷阵;JButtonbuttonPerson;Containercon;JPanelbox;File英雄榜=newFile("英雄榜.txt");Hashtablehashtable=null;Record记录对话框=null;ShowRecord显示英雄榜对话框=null;Game(){buttonPerson=newJButton(newImageIcon("微笑脸.gif"));雷阵=newMineSquare("中级",40,16,16,buttonPerson,记
8、录对话框);buttonPerson.addActionListener(this);con=getContentPane();con.add(雷阵,BorderLayout.CENTER);box=newJPanel();box.setLayout(newGridLayout(1,3));box.add(雷阵.count.textShowMine);box.add(buttonPerson);box.add(雷阵.time.textShowTime);
此文档下载收益归作者所有