MFC接金子游戏制作PPT.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
MFC接金子游戏制作PPT

游戏结果见下图: 接金子游戏 1.问题描述 本程序选择游戏菜单的开始选项,执行游戏。游戏任务是使用键盘上的左右方向键操纵一个人随机从天空中垂直落下的金子。当人接到金子时,要记录接到的个数。如果人没有接到金子,则游戏结束。 2. 编程要求 (1)正确设置游戏菜单(开始,结束); (2)金子(四个)和人以位图方式显示; (3)金子(四个)运动方式随机垂直向下; (4)用键盘操纵人左右移动; (5)人接到金子时,金子就不再显示了,但要显示接到的个数,若人没有接到金子时,则显示游戏结束。 3. 要点分析 本题主要涉及到的知识有:键盘消息、定时器消息、菜单、位图、对话框,同时也涉及到画笔/画刷的使用,文字显示等工作,难度适中。该题的难点在于如何建立金子类以及如何判别人已接到金子,同时不再显示该金子。 (1)判别人已接到金子是使用函数PtInRect()来完成的。 (2)金子接到后不再显示,是利用金子类中的一个布尔成员变量,当人已接到金子时,该成员变量的值发生变化,在显示方法中,就不在显示金子了。 4. 解题步骤 (1)首先生成一个名为Inceptgold的SDI程序框架,其它选项均可用缺省设置。 (2)然后使用Developer Studio菜单的Insert/Resource...选项调出Insert Resource对话框,选择Bitmap选项,按在“插入”按钮,导入人和金子资源,标识符ID分别为IDB_MAN何IDB_GOLD. (3)选择Developer Studio菜单的File/New//Flies选项卡,再选择C/C++Header Fike,输入金子类头文件名gold,在gold.h文件中添加具体内容。 (4)选择Developer Studio菜单的File/New//Flies选项卡,再选择C/C++Source Fike,输入金子类头文件名gold,在gold.cpp文件中添加具体内容。 (5)编辑项目的菜单资源,选择Workspace中的Resourse View’,左双击Menu项,再左双击IDR_NAINFRAME项,在框架窗口的主菜单中添加菜单选项“游戏”,在游戏下拉菜单选项中添加两个菜单选项“开始”和“结束”,起ID分别为ID_BEGIN和ID_END。 程序清单及详细过程如下: (6)利用Class Wizard为视图类添加与这些菜单选项对应的成员函数OnBegin()、OnEnd()。进入Class Wizard的Message Maps选项卡,选择Class Name项为CInceptgoldView,在Object IDs列表框中分别选择新添加的菜单选择的ID,在Messages列表框中选择COMMAND,按下Add Function按钮添加成员函数。 (7)利用Class Wizard为视图类添加必要的成员函数OnKeyDown()、OnTimer()。进入Class Wizard的Message Maps选项卡,选择Class Name项为CInceptgoldView,在Messages列表框中分两次选择新添加的消息WN_KEYDOWN和WN_TIMER,按下Add Function按钮添加成员函数,再按下Edit Code按钮添加具体内容。Class Wizard会为这些消息选项添加相应的消息响应函数。 (8)完成以上工作后,即可修改程序框架,添加必要的代码。 在头文件gold.h中添加代码: Class CGold:public CObject { public: CBitmap m_bmpGold; //金子图象 int m_nWidth; //金子图象宽 int m_nHeight; //金子图像高 cPoint m_pointGold; //金子的位置 BOOL m_bCaptured; //金子是否被接到 public: CGold();

文档评论(0)

shuwkb + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档