ImageVerifierCode 换一换
格式:DOCX , 页数:17 ,大小:1.25MB ,
资源ID:15169351      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/15169351.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(九宫格拼图游戏Word格式文档下载.docx)为本站会员(b****2)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

九宫格拼图游戏Word格式文档下载.docx

1、按照常规考试方式,不能体现本课程“以理论为基础,侧重实践和应用”的特点,也不能考查学生理解本课程知识的程度以及所培养具备的MFC程序设计应用能力。3任务和要求:针对某一综合应用项目,完成如下任务:(1)简要的需求分析(2)规划系统主要功能及其结构。(3)完成各项系统功能的设计。(4)形成项目文档和开发报告。4工具与环境:设计工具:Visual Studio 二、进度安排:第1周:基础知识串联复习第2周:撰写设计报告,并按时递交。第3周:实现系统各模块功能功能第一部分 设计方案论述2.1项目方案论述2.1.1具体论述1.CMenu* GetSubMenu(int nPos) 若弹出菜单位于指定的

2、位置,则返回CMenu 对象的指针,其中CMenu对象要包含弹出菜单的句柄;否则返回NULL。如果CMenu 对象不存在,那么将创建临时CMenu对象,但返回的CMenu指针不应被存储。nPos指定包含在菜单中的弹出菜单的位置。对于第一个菜单项,开始位置值为0。2.BOOL AppendMenu(UINT nFlags, UINT nIDNewItem=0, LPCTSTR lpszNewItem= NULL) 在末尾添加一项,若nFlags为MF_SEPARATOR表示增加一个分隔条,这样其他两个参数将会被忽略;若nFlag为MF_STRING表示添加一个菜单项。nIDNewItem为该菜单

3、的ID命令值;若nIDNewItem为MF_POPUP表示添加一个弹出菜单项,这时nIDNewItem为另一菜单的句柄HMENU。lpszNewItem为菜单文字说明。3.BOOL InsertMenu(UINT nPosition,UINT nFlags ,UINT nIDNewItem = 0,LPCTSTR lpszNewItem = NULL) 用于在指定位置插入一菜单,变量nPosition指定插入位置。如果nFlags 包含MF_BYPOSITION 则表明插入在nPosition 位置, 如果包含MF_BYCOMMAND表示插入在ID为nPosition的菜单处。4.BOOL M

4、odifyMenu(UINT nPosition, UINT nFlags, UINT nIDNewItem=0 ,LPCTSTR lpszNewItem = NULL) 用于修改某一位置的菜单,如果nFlags包含MF_BYPOSITION,则表明修改nPosition位置的菜单,如果包含MF_BYCOMMAND表示修改ID为nPosition处的菜单。5.BOOL RemoveMenu(UINT nPosition, UINT nFlags) 用于删除某一位置的菜单。如 果 nFlags 包含MF_BYPOSITION 则表明删除nPosition 位置的菜单, 如果包含MF_BYCOMM

5、AND表示删除ID为nPosition处的菜单。6.BOOL AppendMenu(UINT nFlags, UINT nIDNewItem, const CBitmap* pBmp) 和BOOL InsertMenu(UINT nPosition, UINT nFlags, UINT nIDNewItem, const CBitmap* pBmp)可以添加位图菜单,但这样的菜单在选中时是反色显示,并不美观。7.UINT CheckMenuItem(UINT nIDCheckItem, UINT nCheck) 返回菜单项以前的状态: MF_CHECKED 或MF_UNCHECKED 。如果该

6、菜单项不存在, 那么将返回0xFFFFFFFF。nIDCheckItem指定由nCheck确定的将要选择的菜单项。nCheck指定是否选中菜单项, 并决定菜单中各菜单项的位置。参数nCheck可以是MF_CHECKED或MF_UNCHECKED与MF_BYPOSITION或MF_BYCOM MAND的组合。这些标志可通过使用位与运算进行组合。其中MF_CHECKED与MF_UNCHECKED用来进行状态转换,在菜单项之前放置默认的选中标记。简而言之,调用一系列函数将游戏启动(初始化变量)、选择位图、加载位图、游戏模式选择(位图分割)、小块图片随机排序、静态控件显示位图等一系列操作连接起来。2.

7、2 程序简介2.2.1 类图说明1.主对话框类及成员函数:2.“关于”对话框的类及成员函数:3图片载入的类及成员变量和函数;4.图片分割及拼图移动类及成员函数:5.静态网址链接类:6.全局变量及全局函数第二部分 详细设计2.1 详细设计过程(包含关键代码及截图)2.1.1 创建初始界面新建一个MFC AppWizard(exe)工程,将其命名为Picture,在第一步选择Dialog based,如图3-1所示,接下来直接点Finish。图 3-1 新建工程1. 游戏主窗口:2. 游戏关于窗口:3.菜单界面:图 3-2 添加菜单项各个菜单项的ID、Caption如图3-3至3-7所示。“重新开

8、始”菜单项:图 3-3 游戏重新开始菜单图 3-4 游戏3x3菜单图 3-5 游戏4x4菜单图 3-6 游戏5x5菜单3-7 游戏6x6菜单图 3-7 退出游戏菜单图 游戏菜单“风景”属性设置 图 游戏菜单“草莓”属性设置图 游戏菜单“绿水”属性设置图:从计算机中载入自定义图片菜单设置切分窗口图片是否带边框菜单设置以上完成后,右击打开对话框的属性(Properties),将对话框的ID号设为IDD_MY_DIALOG,Caption设置为“九宫格拼图”,并为Menu属性对应的下拉框选择IDR_MENU1,如图3-8所示,这样菜单就可以在程序运行时显示在主对话框的顶部了。图 3-8 拼图游戏属性

9、在对话框的属性中选中Minimize box以实现对话框的最小化,如图3-9。图 3-9 最小化选项2.1.2 位图的读入和显示在程序中,需要由用户来选择游戏中使用的图片,同时还需要将整幅图片分成不同的小块。因此,采用(Picture)Static控件作为位图的载体,分别显示图片的不同部分。首先,需要读入位图资源。点击菜单栏Insert-Resource-Bitmap-Import,在文件类型中选中必须所有文件位图才能显示出来,在弹出的对话框里面选中所要加的位图,点击Import,完成一副位图添加。添加完成后会弹出如图3-13的对话框。图 3-13 位图添加成功2.实现静态链接功能:游戏资源文

10、件构架:图 3-14 添加四副位图为对话框的“图片”菜单添加五个菜单项,如图3-15所示:图 3-15 添加图片菜单项接下来为CPictureDlg类添加一个CBitmap类型的成员变量Bitmap,如图3-16所示。CBitmap封装了Windows图形设备接口(GDI)中的位图,并且提供了操纵位图的成员函数。游戏对话框的函数响应1、主对话框类函数实现定义:图 3-19游戏对话框处理函数说明2.游戏图片切分初始化及移动函数说明:3.图片载入内存类的函数说明:4.关于对话框类:5.全局函数的实现: 6.静态链接类的引用:(可使用第三方类)第三部分 函数实现及项目测试图 3-41 程序运行结果图 4-14 开始游戏

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1