蜘蛛纸牌详细设计说明书
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
蜘蛛纸牌
概要设计说明书
南昌航空大学软件学院
2011年10月
1.引言
1.1编写目的
1.1编写目的
本详细设计说明书是针对蜘蛛纸牌游戏的课程作业而编写。目的是对该软件进行详细设计,在概要设计的基础上进一步明确系统结构,详细地介绍系统的各个模块,为进行后面的实现和测试作准备。本详细设计说明书的预期读者为本项目小组的成员以及对该系统感兴趣,在以后想对系统进行扩展和维护的人员。
1.2背景
a.待开发的系统的名称:蜘蛛纸牌游戏软件
b.本项目的任务提出者: 周璇、罗书惟、罗剑、王天宇
开发者:周璇、罗书惟、罗剑、王天宇
用户:所有对该软件感兴趣,并且对该游戏熟悉的用户]
1.3定义
AboutDialog:游戏关于类;
Frame1:游戏界面设计;
PKCard:扑克牌的排列算法;
Spider:游戏规则;
SpiderMenuBar:游戏菜单栏
1.4参考资料
《Java实用教程》清华大学出版社张跃平耿祥义著
《Java实用教程》
2. 系统的结构
3.模块1(Frame1)设计说明
3.1模块描述
实现用户界面的类,含有1个类3种方法,是本系统中最简单的代码3.2功能
实现用户友好界面。
3.3性能
负责接受用户输入,显示系统输出,其他模块功能的协调调用。
3.4输入项
选择游戏的难度系数(简单、中等、高等)、显示可行性操作、统计战况、发牌、保存游戏等。
3.5输出项
得出游戏的结果界面。
3.6接口
import javax.swing.JMenuBar;
import javax.swing.JMenu;
import javax.swing.JMenuItem;
import javax.swing.JRadioButtonMenuItem;
import javax.swing.ButtonGroup。
3.7注释设计
ImageIcon icon = new ImageIcon("images/测试.gif"); //gif,jpg 格式能用,bmp格式不能用
3.8 限制条件
扑克牌的图画格式只能是gif,jpg。
3.9尚未解决的问题
图画的格式应该让所有的格式都适用。
4.模块2(SpiderMenuBar)设计说明
4.1模块描述
实现游戏上所有的按钮的类,含有2个类14种方法,是本系统中较难的代码
4.2功能
实现游戏中所有游戏中的按钮的功能。
4.3性能
游戏中所有功能的按钮,方便用户使用。
4.4输入项
选择游戏的难度系数(简单、中等、高等)、显示可行性操作、统计战况、发牌、保存游戏等。
4.5输出项
得出游戏的结果界面。
4.6接口
import javax.swing.JMenuBar;
import javax.swing.JMenu;
import javax.swing.JMenuItem;
import javax.swing.JRadioButtonMenuItem;
import javax.swing.ButtonGroup;。
4.7注释设计
/*
*为生成蜘蛛纸牌游戏的菜单栏,
*实现菜单栏中各个组件的事件监听
*
**/
jNewGame.addSeparator(); //将新分隔符追加到菜单的末尾
5.模块3(AboutDialog)设计说明
5.1模块描述
实现游戏上有关说明的类,含有1个类2种方法,是本系统中较简单的代码5.2功能
实现游戏中游戏的有关说明的功能。
5.3性能
游戏的相关说明,方便用户使用。
5.4输入项
无。
5.5输出项
得出游戏的相关说明。
5.6接口
import javax.swing.*;
import java.awt.*。
5.7注释设计
/*
*主要功能是为生成蜘蛛纸牌游戏的帮助栏
*
**/
6.模块3(PKCard)设计说明
6.1模块描述
定义纸牌的属性,包括名称、位置等相关信息。
并通过相关方法实现纸牌的移动等,含有2个类21种方法,是本系统中非常难的代码
6.2功能
实现游戏中纸牌的定义,包括名称、位置等相关信息。实现纸牌移动的相关方法。
6.3性能
游戏的主要算法实现和关键代码段。
6.4输入项
移动鼠标实现纸牌的移动。
6.5输出项
得出移动过后纸牌的摆放位置。
6.6接口
import java.awt.*;
import java.awt.event.*;
import javax.swing.*。
6.7注释设计
/*
*该类的作用为定义纸牌的属性,包括名称、位置等相关信息。
*并通过相关方法实现纸牌的移动等。
*/
public class PKCard extends JLabel implements
MouseListener,MouseMotionListener{
//纸牌的位置
public void flashCard(PKCard card){
//启动Flash线程
new Flash(card).start();