贪吃蛇游戏开发论文设计

  • 格式:doc
  • 大小:297.68 KB
  • 文档页数:22

下载文档原格式

  / 22
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

MFC应用开发技术

贪吃蛇游戏开发

学院:人民武装学院

专业:计算机工程与技术

班级: 11 维护

学号: 1120070257 学生姓名:胡桥林

指导教师:黄顺强

摘要

本设计实现了一个简单的贪食蛇小游戏,该游戏不仅实现了简单的游戏操作功能,还实现了灵活的运作功能,而且具有简洁大方的图文外观。此设计按照软件工程的方法进行,系统具有良好的界面和必要的交互信息,使操作人员能快捷简单地进行操作,给玩家一个容易有趣的游戏。本系统开发平台为Windows XP,程序设计语言采用C++,在程序设计中,采用了结构化与面向对象两种解决问题的方法。

关键词:程序设计;计算器;MFC;按钮控件

目录

第一章游戏说明 (4)

1.1 功能描述 (4)

1.2 VC++6.0 的介绍 (4)

第二章 MFC的的概述 (5)

2.1 MFC的介绍 (5)

2.2 类的介绍 (5)

第三章总体设计说明 (7)

3.1 设计思路 (7)

3.2 程序框图 (7)

3.3 数据结构 (9)

3.4 主要算法 (10)

第四章代码实现 (11)

4.1 随机放置食物 (11)

4.2 初始化数据 (11)

4.3 方向键控制蛇的运动方向 (13)

第五章运行结果 (17)

5.1 初始界面 (17)

5.2 开始游戏时的界面 (17)

5.3 游戏运行时界面 (18)

5.4 游戏结束 (18)

总结 (20)

致谢 (21)

参考文献 (22)

第一章游戏说明

贪食蛇是一个深受大众喜爱的简单游戏,玩家通过按键上的四个光标控制蛇的上下左右四个方向移动,蛇头碰撞到食物则表示食物被蛇吃掉,这时蛇的身长长一节,接着出现食物,等待被蛇吃掉,如果蛇在移动过程中,撞到墙壁或者身体交叉蛇头撞到自己的身体游戏结束

游戏运行环境:

设计环境:Microsoft Windows XP

开发工具:Visual C++ 6.0

运行环境:Microsoft Windows XP及以上版本

1.1 功能描述

游戏规则如下:

●点击游戏->开始菜单游戏开始;

●通过方向键控制蛇的运动方向,吃掉随机出现的豆子,若不小心碰到墙

壁或者与自身相交,则该轮游戏结束;

●点击游戏->暂停按钮,暂停游戏;点击游戏->继续菜单,继续游戏;

●点击设置->难度菜单,设定游戏难易程度;

●点击游戏->结束菜单退出游戏。

●单击帮助->游戏规则查看游戏规则。

1.2 VC++6.0 的介绍

VC++6.0 是 Microsoft 公司推出的一个基于 Windows 系统平台、可视化的集成开发环境,它的源程序按 C++语言的要求编写,并加入了微软提供的功能强大的 MFC(Microsoft Foundation Class)类库。MFC 中封装了大部分 Windows API 函数和 Windows 控件,它包含的功能涉及到整个 Windows 操作系统。MFC 不仅给用户提供了 Windows 图形环境下应用程序的框架,而且还提供了创建应用程序的组件,这样,开发人员不必从头设计创建和管理一个标准 Windows 应用程序所需的程序,而是从一个比较高的起点编程,故节省了大量的时间。另外,

它提供了大量的代码,指导用户编程时实现某些技术和功能。因此,使用 VC++提供的高度可视化的应用程序开发工具和 MFC 类库,可使应用程序开发变得简单。

第二章 MFC的的概述

2.1 MFC的介绍

MFC(Microsoft Foundation Classes) ,是一个微软公司提供的类库( class libraries)以 C++类的形式封装了 Windows 的 API,,它包含了窗口等许多类的定义。各种类的集合构成了一个应运程序的框架结构,以减少应用程序开发人员的工作量。其中包含的类包含大量 Windows 句柄封装类和很多 Windows 的内建控件和组件的封装类。 MFC 6.0 版本封装了大约200 个类,其中的一些可以被用户直接使用。例如 CWnd 类封装了窗口的功能,包括打印文本、绘制图形及跟踪鼠标指针的移动等; CsplitterWnd 类是从 CWnd 类派生出来的,继承了基类或称父类 CWnd 类的所有特性,但增加了自己的功能,实现拆分窗口,使窗口至少可被拆分成两个窗口,用户可以移动两个窗口之间的边框来改变窗口的大小;CtoolBar 类可以定义工具栏等。 MFC 命名的惯例是类的名字通常是由“C”打头;成员变量使用前缀“m_”,接着使用一个字母来指明数据类型,然后是变量的名称;所有的单词用大写字母开头。

2.2 类的介绍

2.2.1 CWnd:窗口,它是大多数“看得见的东西”的父类(Windows里几乎所有看得见的东西都是一个窗口,大窗口里有许多小窗口),比如视图CView、框架窗口CFrameWnd、工具条CToolBar、对话框CDialog、按钮CButton,etc;一个例外是菜单(CMenu)不是从窗口派生的。该类很大,一开始也不必学,知道就行了。

2.2.2 CDocument文档,负责内存数据与磁盘的交互。最重要的是OnOpenDocument(读入),OnSaveDocument(写盘),Serialize(读写)。

2.2.3 CView视图,负责内存数据与用户的交互。包括数据的显示、用户操作的响应(如菜单的选取、鼠标的响应)。最重要的是OnDraw(重画窗口),通常用CWnd::Invalidate()来启动它。另外,它通过消息映射表处理菜单、工具条、快捷键和其他用户消息。你自己的许多功能都要加在里面,你打交道最多的就是它。

2.2.4 CDC设备文本。无论是显示器还是打印机,都是画图给用户看。这图就抽象为CDC。CDC与其他GDI(图形设备接口)一起,完成文字和图形、图像的显示工作。把CDC想象成一张纸,每个窗口都有一个CDC相联系,负责画窗口。CDC有个常用子类CClientDC(窗口客户区),画图通常通过CClientDC完成。

2.2.5 CDialog对话框。

2.2.6 CWinApp应用程序类。似于C中的main函数,是程序执行的入口