基于Qt的贪吃蛇游戏设计与实现本科毕业论文设计与实现.docx
《基于Qt的贪吃蛇游戏设计与实现本科毕业论文设计与实现.docx》由会员分享,可在线阅读,更多相关《基于Qt的贪吃蛇游戏设计与实现本科毕业论文设计与实现.docx(19页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、基于Qt的贪吃蛇游戏设计与实现本科毕业论文设计与实现 Snake game design and implementation based on Qt Abstract With the development of the society, the quickening pace of life, people more and more people joined the globalization of the world.People are no longer limited to a small piece of heaven and earth, overtime, travel
2、 inevitably a modern business.At a time when a anywhere entertainment game became a necessity.Snake is simple, easy to operate, entertainment is extremely strong, well meet the requirements of the player. Application development platform for Windows 7, this system is based on Qt cross-platform GUI a
3、pplication framework, using c + + programming language.In the process of system design, using the object-oriented analysis and design pletely using the method of software engineering needs analysis, overall design, implementation and testing as a whole.In programming, discusses the method of using g
4、raphical framework to solve the problem, the design of other graphical user interface (GUI) has important practical significance. This design implements a simple snake game, the game is not only realize the function of simple operation, and realize the function of flexible operation, and has a conci
5、se and easy by appearance.This system has a good interface and the interaction of the necessary information, allow the operator to quick and easy to operate, to give the players a fun game. Key words Qt; C + + programming language; snake 目录 摘要 (i) Abstract (ii) 绪论 (1) 1 嵌入式系统 (2) 1.1 嵌入式系统 (2) 1.2 组
6、成 (2) 1.2.1 硬件层 (2) 1.2.2 中间层 (3) 1.3 特点 (3) 1.3.1 可裁剪性 (3) 1.3.2 强实时性 (4) 1.3.3 统一的接口 (4) 1.3.4 方便 (4) 1.3.5 强稳定性,弱交互性 (4) 1.3.6 固化代码 (4) 1.3.7 适应性 (4) 2 开发环境及关键技术 (5) 2.1 Qt (5) 2.2 信号和槽机制 (5) 2.2.1 信号 (6) 2.2.2 槽函数 (6) 2.3 布局管理 (6) 2.4 程序启动画面QSplashScreen类 (7) 2.5 QTimer类 (8) 2.6 二维图形的绘制方法 (8) 2.
7、7 右键菜单 (9) 3 可行性分析 (10) 3.1 研究目的 (10) 3.2 开发的可行性 (10) 3.2.1 操作可行性 (10) 3.2.2 技术可行性 (10) 3.2.3 经济可行性 (10) 3.3 专业术语 (11) 3.4 条件基础 (11) 3.5 实现目标 (11) 3.6 可行性研究方法 (11) 3.7 结论意见 (11) 4 需求分析 (12) 4.1 研究目的 (12) 4.2 开发背景 (12) 4.3 任务概述 (13) 4.3.1 目标 (13) 4.3.2 用户特点 (13) 4.4 需求规定 (13) 4.4.1 对功能的规定 (13) 4.4.2
8、对性能的规定 (13) 4.5 要解决的问题 (13) 4.6 提出的要求 (14) 4.7 可以实现的要求 (14) 4.8 关键点 (14) 4.9 嵌入式特性 (14) 5 贪吃蛇分析 (15) 5.1 贪吃蛇要求 (15) 5.2 贪食蛇设计思想 (15) 5.3 贪吃蛇游戏功能 (15) 6 贪吃蛇设计 (16) 6.1 系统的输入输出 (16) 6.1.1 输入 (16) 6.1.2 输出 (16) 6.1.3 蛇的移动 (16) 6.2 设计基础 (16) 6.3 数据字典 (16) 6.4 处理流程 (17) 6.5 系统的逻辑模型 (18) 6.6 功能与程序的关系 (18)
9、 6.7 运行设计 (19) 6.7.1 运行控制 (19) 6.7.2 运行时间 (19) 7 贪吃蛇实现 (20) 7.1 程序系统的组织结构 (20) 7.1.1 每个模块的名称、标识符 (20) 7.1.2 模块之间的关系 (21) 7.2 程序描述 (21) 7.2.1 目的和意义 (21) 7.2.2 特点说明 (21) 7.3 程序详解 (21) 7.3.1 构造函数Snake(QWidget *parent) (21) 7.3.2 初始化界面函数iniWidget() (22) 7.3.3 连接信号函数iniConnect() (24) 7.3.4 初始化游戏函数iniGame
10、() (25) 7.3.5 贪吃蛇移动函数doMoveSnake() (25) 7.3.6 设置是否可以穿墙函数setEnableGoThroughWall() (26) 7.3.7 更新得分函数changeScore() (26) 7.3.8 更新等级函数changeLevel() (27) 7.3.9 判断贪吃蛇是否吃到食物函数isEating() (27) 7.3.10 判断游戏是否结束函数isGameOver() (27) 7.3.11 绘图事件处理函数paintEvent(QPaintEvent *event) (28) 7.3.12 键盘事件处理函数keyPressEvent(QK
11、eyEvent *event) (29) 7.3.13 获取随机颜色函数getColor() (30) 7.3.14 时间处理函数 (30) 7.3.15 右键菜单处理函数 (31) 7.3.16 获取右键菜单槽函数 (31) 7.3.17 点击右键菜单中Info的槽函数 (32) 7.3.18 点击右键菜单中About的槽函数 (32) 7.3.19 程序主函数 (32) 8 软件测试 (34) 8.1 测试的意义 (34) 8.2 测试过程 (34) 8.3 测试计划 (34) 8.4 预期的结果 (34) 8.5 测试结果 (35) 结论 (40) 参考文献 (41) 致谢 (42) 外
12、文原文 (43) 外文翻译 (54) 绪论 贪吃蛇是世界知名的益智类小游戏,选择这个题目一方面的原因是为了将我们的所学知识加以运用;另一方面,虽然很小就接触这个游戏,但是它的制作方法对我们而言还是很神秘的。我们希望通过自己的所学知识把它剖析开来,通过自己的动手实践,真正的了解它的本质和精髓。希望通过这次实践,我们能从中提高自己的编程能力,并从中学会从零开始分析设计程序。 本游戏的开发是基于Qt跨平台的图形用户界面应用程序框架,用的是C+开发语言。C+语言简洁灵活,运算符的数据结构丰富、具有结构化控制语句、程序执行效率高,而且同时具有高级语言与汇编语言的优点,与其它语言相比,C语言具有可以直接访
13、问物理地址的优点,与汇编语言相比又具有良好的可读性的可移植性。总得来说,C+语言的主要特点表现在两个方面,一是尽量兼容C,二是支持面向对象的方法。它操持了C的简洁、高效的接近汇编语言等特点,对C的类型系统进行了改革的扩充,因此C+比C更安全,C+的编译系统能检查出更多的类型错误。另外,由于C语言的广泛使用,因而极大的促进了C+的普及和推广。 C+语言最有意义的方面是支持面向对象的特征。虽然与C的兼容使得C+具有双重特点,但他在概念上完全与C不同,更具面向对象的特征。 数据结构是计算机存储、组织数据的方式。数据结构是指相互之间存在一种或多种特定关系的数据元素的集合。通常情况下,精心选择的数据结构
14、可以带来更高的运行或者存储效率。数据结构往往同高效的检索算法和索引技术有关。 1 嵌入式系统 1.1 嵌入式系统 嵌入式系统是一种专用的计算机系统,作为装置或设备的一部分。 嵌入式系统是一个控制程序存储在ROM中的嵌入式处理器控制板。事实上,所有带有数字接口的设备,如手表、微波炉、录像机、汽车等,都使用嵌入式系统,有些嵌入式系统还包含操作系统,但大多数嵌入式系统都是由单个程序实现整个控制逻辑。 从应用对象上加以定义,嵌入式系统是软件和硬件的综合体,还可以涵盖机械等附属装置。 国内普遍认同的嵌入式系统定义为:以应用为中心,以计算机技术为基础,软硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、
15、功耗等严格要求的专用计算机系统。 1.2 组成 一个嵌入式系统装置一般都由嵌入式计算机系统和执行装置组成, 嵌入式计算机系统是整个嵌入式系统的核心,由硬件层、中间层、系统软件层和应用软件层组成。执行装置也称为被控对象,它可以接受嵌入式计算机系统发出的控制命令,执行所规定的操作或任务。执行装置可以很简单,如手机上的一个微小型的电机,当手机处于震动接收状态时打开;也可以很复杂,如SONY 智能机器狗,上面集成了多个微小型控制电机和多种传感器,从而可以执行各种复杂的动作和感受各种状态信息。 1.2.1 硬件层 硬件层中包含嵌入式微处理器、存储器(SDRAM、ROM、Flash等)、通用设备接口和I/
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 Qt 贪吃 游戏 设计 实现 本科毕业 论文
限制150内