软件开发实习e实验报告。
实验名称: 拼图游戏
班级姓名学号职位成绩。
软件1071 谢尧健 200711701128 软件编码。
指导教师:__李振德。
目录。一、摘要 2
二、概要设计 3
1.拼图puzzle游戏程序设计要求 3
2.自定义类说明 3
三、设计思想 4
1.拼图设计思想 4
2.程序流程图 5
3.界面设计思想 5
四、详细设计 5
五、测试分析 18
1. 操作运**况 18
2. 程序异常处理 18
六、运行结果 19
七、心得体会 20
八、参考文献 21
此拼图游戏是简单的拼凑图块的游戏,仅限于进行数字拼图,不可以进行数字和**的转换,只可以进行高低级的切换,低级是由9块8个实格数字和1个空格组成,高级由16块15个实格数字和1个空格组成,菜单项可以进行键盘快捷键的操作,可对游戏拼图所用时间进行显示。界面为灰白对称,简单明了。
分析游戏主要功能,参考已有游戏,设计实现如下功能的小游戏:
1)实现程序gui图形界面;
2)实现游戏开始、重来、退出功能;
3)设计实现游戏主要算法;
4)实现鼠标或键盘事件响应模块;
5)实现用户可选难度等级功能;
6)实现输赢自动判别功能。
1)class pintu extends jframe implements actionlistener,itemlistener
}//自定义一个主窗体类。
类名:pintu
作用:自定义的主窗体类,用来显示整个窗体。
继承的父类: jframe类。
实现的接口: actionlistener,itemlistener
2) class jtable extends jpanel implements actionlistener
}//自定义一个**类。
类名:jtable
作用:自定义的**类,用来显示数字块按钮。
继承的父类:jpanel
实现的接口:actionlistener
3) public class puzzle
}//自定义主体类。
类名:puzzle
作用:自定义主体main函数的类,用来调用各种类。
继承的父类:无。
实现的接口:没有。
4) class logo extends dialog
}//自定义关于拼图主题类。
类名:logo
作用:自定义的关于类,用来显示拼图游戏的主题。
继承的父类:dialog
实现的接口:没有。
5) class help extends dialog
}//自定义帮助说明类。
类名:help
作用:自定义的帮助说明类,用不可编辑的文本域的窗体显示拼图游戏的操作使用方法说明。
继承的父类:dialog
实现的接口:没有。
6) class laytime extends jlabel implements runnable
}//自定义时间标签类。
类名:laytime
作用:自定义的时间标签类,用来实现对拼图游戏的时间的显示。
继承的父类:jlabel
实现的接口:runnable
自定义按钮初始状态,除最后一个为空按钮且隐藏外,其它都显示数字。开始后,时间同时也开始计时,随机排列数字和空数按钮,判断点击的是哪个按钮,判断点击的按钮是否在这组按钮之中,假如点击的按钮返回的按钮下标通过除4或者除4求余和与一个数组相加之后值相等,循环之后判断是否上,下,左或右有空数按钮,有的话就可以移动按钮。可以移动则交换下按钮,把数字按钮隐藏,空数按钮显示交换的数字。
每次都判断是否排序正确,正确的话,弹出一个消息对话框。时间停止,即为最终用时。
创建窗体,设计菜单,定义菜单条menubar,菜单子项menuitem,检测盒菜单项checkboxmenuitm。通过setmenubar方法可将菜单条绑定给窗体,创建menuitem对象是设定快捷键,并注册监听者。定义一个标签类显示时间,时间通过线程实现。
自定义一个**类,在里面进行一组按钮的初始化,通过add( )方法添加这些按钮,在此类中,注册监听者,给监听者编写事件处理**。再定义两个按钮,添加到主窗体中,注册监听者,方便随时点击。
import
import
import
import
class pintu extends jframe implements actionlistener,itemlistener
public static int m=9;//定义移动按钮的个数。
jframe f; /定义主窗体。
jpanel p1;//定义放时间标签的面板。
laytime usetime;//定义时间标签。
jtable table=new jtable(m); 定义排列按钮的**。
jbutton start;//定义开始按钮。
jbutton end;//定义结束按钮。
menubar mb;//定义菜单。
/*定义菜单里的各项*/
menu m_games,m_help;
menuitem item1,item2,item6,item7,item8;
checkboxmenuitem item3,item4,item5;
container con; /定义容器对象
boolean already=false;//定义是否排序正确。
logo abo_logo; /关于拼图。
help help1; /帮助文件。
/*构造方法*/
public pintu()
/*创建菜单*/
课程设计报告格式 课程设计
洛阳理工学院。课程设计说明书。课程名称。设计课题。专业。班级。学号。姓名。完成日期2014年12月26日。问题描述 小四宋体,行间距单倍行距,每段缩进两个字符。叙述一下设计的内容要求。基本要求 小四宋体,行间距单倍行距,每段缩进两个字符。叙述一下设计的基本要求。测试数据 小四宋体,行间距单倍行距,每...
课程设计总结,课程设计报告
课程设计总结,课程设计报告。3.尝试应用项目管理软件进行项目进程的规划管理 绘制甘特图,不作硬性要求 二 选题说明。人事管理是企业信息管理的重要部分,面对大量的人事工资信息,财务部门采用人力处理将浪费大量的时间 人力和物力,且数据的准确性低。因此,开发一个界面友好,易于操作的人事工资管理软件进行自动...
课程设计 课程设计报告格式
学校名。课程设计报告。课程名称 c语言程序设计 系别 专业班级 学号。姓名。课程题目 企业人事管理系统 完成日期 指导老师 年月日。附件。课程设计的内容。企业人事管理系统 本项目的目标是开发一个功能实用,操作简便,简单明了的人事管理系统。能够录入人事的基本资料,在操作上能够完成诸如添加 修改 删除 ...