MFC_陨石撞飞机实验简析.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
一、题目 陨石撞飞机综合性实验 二、中文摘要 用MFC设计一个陨石撞飞机的平面游戏:陨石不断地向下落,飞机通过上下左右键移动以躲避陨石。当陨石碰撞了飞机时,显示提示对话框,及飞机爆炸图像。确定后在碰撞位置重新开始游戏。三次碰撞后显示提示对话框,游戏结束。 三、关键词 MFC、Bitmap、timer、键盘响应(WM_KEYDOWN)…]选择Bitmap选项,单击[新建]即可。绘出一个飞机,ID为(IDB_BITMAP1)、五个陨石(IDB_BITMAP2~IDB_BITMAP6)和一个炸弹位图(IDB_BITMAP7),如下图。 飞机位图 陨石位图 爆炸位图 (三)、在planeView.h头文件中声明所需变量和函数 CBitmap m_plane; //声明一个CBitmap类型的飞机变量m_plane int mx,my; //表示飞机坐标 CBitmap m_bump; //爆炸位图变量 int mpx,mpy; //表示爆炸位图的坐标 int t; //爆炸次数 //声明陨石位图的成员变量为CBitmap类型的变量 CBitmap m_stone1,m_stone2,m_stone3,m_stone4,m_stone5; //声明陨石的坐标变量为int类型: int nstone1x,nstone1y; int nstone2x,nstone2y; int nstone3x,nstone3y; int nstone4x,nstone4y; int nstone5x,nstone5y; 再声明函数成员 void CPlanView::DrawPlane(CDC *pDC);//飞机位图函数 void CPlanView::Drawbump(CDC *pDC); //爆炸位图函数 // 声明绘制陨石的函数原型: void DrawStone1(CDC *pDC); void DrawStone2(CDC *pDC); void DrawStone3(CDC *pDC); void DrawStone4(CDC *pDC); void DrawStone5(CDC *pDC); 以上成员(数据成员、成员函数)均为public属性 (四)在planview.cpp文件中添加函数 1)、修改构造函数 mx=100; my=100; t=0; //赋初值 m_plane.LoadBitmap(IDB_BITMAP1); //飞机位图调用 m_bomb.LoadBitmap(IDB_BITMAP7); //爆炸位图调用 //添加陨石初始化操作代码,随机产生 nstone1x=rand()%500; // 陨石1 x方向随机数0~499 nstone1y=10; m_stone1.LoadBitmap(IDB_BITMAP2); nstone2x=rand()%500; // 陨石2 x方向随机数0~499 nstone2y=10; m_stone2.LoadBitmap(IDB_BITMAP3); nstone3x=rand()%500; // 陨石3 x方向随机数0~499 nstone3y=10; m_stone3.LoadBitmap(IDB_BITMAP4); nstone4x=rand()%500; // 陨石4 x方向随机数0~499 nstone4y=10; m_stone4.LoadBitmap(IDB_BITMAP5); nstone5x=rand()%500; // 陨石5 x方向随机数0~499 nstone5y=10; m_stone5.LoadBitmap(IDB_BITMAP6); 2)、修改ondraw()函数 添加 DrawPlane(pDC); //调用绘制飞机函数 3)、添加DrawPlane()和Drawbump()函数 void CPlaneView::DrawPlane(CDC *pDC) { CDC MemDC; MemDC.CreateCompatibleDC(pDC); BITMAP bm; m_plane.GetObject(sizeof(BITMAP),bm); CBitmap MemBitmap; MemBi

文档评论(0)

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

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

1亿VIP精品文档

相关文档