- 1、本文档共19页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
扫雷项目-概要设计
模块划分:
common.h 公共数据
heroDialog.h heroDialog.cpp 英雄榜类
mainwindow.h mainwindow.cpp 主程序窗口类
myitem.h myitem.cpp 方块类
myscene.h myscene.cpp 场景类
playerdialog.h playerdialog.cpp 玩家类
setdialog.h setdialog.cpp 游戏设置类
各模块设计
common.h 公共数据
游戏的级别
enum gameLevel
{
LOW_LEVEL = 1, 初级
MIDDLE_LEVEL = 2, 中级
HIGH_LEVEL = 3 高级
};英雄榜存储信息
struct gameRecodeInfo
{
gameLevel m_gameLevel;
int m_gameTime;
QString m_playerName;
};heroDialog.h heroDialog.cpp 英雄榜类
父类:QDialog
主要数据成员:
QLabel *label_low;
QLabel *label_low_time;
QLabel *label_low_name;
QLabel *label_middle;
QLabel *label_middle_time;
QLabel *label_middle_name;
QLabel *label_high;
QLabel *label_high_time;
QLabel *label_high_name;
QPushButton *pushButton;
QPushButton *pushButton_OK;
主要成员函数
heroDialog(QWidget *parent = 0) 构造函数
void setHeroDialog(gameRecodeInfo *t_gameRecode[3]); 设置英雄榜对话框的内容
void recountHeroScore(); 重新计算英雄榜的分数void recountScore(); 重新计分QMainWindow
主要数据成员:
QMenu *m_gameMenu; 游戏菜单
QMenu *m_helpMenu; 帮助菜单QAction *m_newGameAct; 开局
QAction *m_lowLevelAct; 初级
QAction *m_middleLevelAct;中级
QAction *m_highLevelAct; 高级
QAction *m_gameSetAct; 自定义
QAction *m_soundAct; 声音
QAction *m_heroRollAct; 扫雷英雄榜
QAction *m_exitAct; 退出
QAction *m_aboutAct; 关于QLCDNumber *m_mineLCD; 显示雷数
QLCDNumber *m_timeLCD; 显示时间
QPushButton *m_smileBtn; 笑脸按钮
myScene *m_scene; 舞台
QGraphicsView *m_view; 镜头
QWidget *m_widget; 中心窗体
aboutDialog m_aboutDialog; 关于对话框
setDialog m_setDialog; 游戏自定义对话框
heroDialog m_heroDialog; 扫雷英雄榜对话框
PlayerDialog m_playerDialog; 刷新记录后对话框int m_mineNum; 记录舞台上的雷数
int m_time; 记录舞台上的时间QTimer *m_timer; 计时的定时器
QString m_heroFileName; 扫雷英雄榜的文件名
QString m_heroTextFileName; 扫雷英雄榜的文本文件名
gameRecodeInfo *m_gameRecode[3]; 存放游戏记录信息
gameLevel m_gameLevel; 当前游戏的级别
QString m_playerName; 刷新游戏记录的玩家名MainWindow(QWidget *parent = 0); 构造函数
virtual void changeEvent(QEvent *
文档评论(0)