课程设计报告

发布 2022-10-01 03:26:28 阅读 8261

软件开发实习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语言程序设计 系别 专业班级 学号。姓名。课程题目 企业人事管理系统 完成日期 指导老师 年月日。附件。课程设计的内容。企业人事管理系统 本项目的目标是开发一个功能实用,操作简便,简单明了的人事管理系统。能够录入人事的基本资料,在操作上能够完成诸如添加 修改 删除 ...