- 1、本文档共30页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
超详细版陨石撞飞机课件
项目五:陨石撞飞机平面游戏设计;实验内容安排;项目五:陨石撞飞机;图2_1 运行结果 ;二、分析;初步实验步骤分析;澡鸡琉职猎并鸿窍陶幅沧促粮材涌署粮敦贡悼点棉绷料杰卒颊瓶抒炔献猾超详细版陨石撞飞机课件超详细版陨石撞飞机课件;2. 添加资源:陨石位图、飞机位图。
1)在ResourceView资源视图选项卡中,插入或添加新的资源Resource,如图1所示:
;2)在Insert Resource(插入资源) 对话框中选择Bitmap(位图)选项,单击New(新建)按钮,如图2所示:
; 该位图的ID默认为IDB_BITMAP1.
3)在ResourceView资源视图选项卡中
①飞机制作:
双击IDB_BITMAP1选项,打开资源编辑器中的位图编辑器,设计一个飞机位图文件,如下图所示。
②陨石制作:
用前面相同方法,在ResourceView资源视图选项卡中,新建(或添加)几个位图,用于设计几个(3~5个)不同的陨石位图文件(每个陨石用一幅图像文件),各个位图的ID默认为IDB_BITMAP2、 IDB_BITMAP3、 IDB_BITMAP4、 IDB_BITMAP5。;佣脾渠河莉忻乘篇姓备锦捏损昭弃耪滥戊仙岳舅剿尾勾笛慷扭牺提肩茬资超详细版陨石撞飞机课件超详细版陨石撞飞机课件;3.对飞机的处理
1)在PlaneView.h 中添加:
一个CBitmap类型的变量m_plane;
两个int 类型变量mx,my 表示飞机的坐标;
一个绘制飞机图形的函数void DrawPlane(); //函数原型声明,实现可放在PlaneView.cpp中。
void DrawPlane(CDC *pDC);
以上数据成员均为public 属性。;2.位图显示分两步:
先将图形加载到内存中,再将内存中的图形显示到屏幕上。
通过,在PlaneView.cpp中自行添加一个函数来实现。
void CPlaneView::DrawPlane(CDC *pDC)
{
CDC MemDC;
MemDC.CreateCompatibleDC(pDC);
BITMAP bm;
m_plane.GetObject(sizeof(BITMAP),bm);
CBitmap MemBitmap;
MemBitmap.CreateCompatibleBitmap(pDC,bm.bmWidth,bm.bmHeight);
CBitmap *pOldBitmap;
pOldBitmap=(CBitmap*)MemDC.SelectObject(MemBitmap);
MemDC.SelectObject(m_plane);
pDC-BitBlt(mx,my,bm.bmWidth,bm.bmHeight,MemDC,0,0,SRCCOPY);
MemDC.SelectObject(pOldBitmap);
};3.修改构造函数与OnDraw函数
添加代码:
构造函数:
mx=100;
my=100;
m_plane.LoadBitmap(IDB_BITMAP1);
OnDraw函数:
DrawPlane(pDC); //调用绘制飞机函数
;4.添加键盘响应处理函数(OnkeyDown)
添加函数,使飞机能随用户按下的上下左右方向键而移动。
方法:
1)在菜单中选择View-ClassWizard,选中CPlaneView类,在Message Maps选项卡中的Messages栏目选择WM_KEYDOWN消息,
双击该项,系统自动生成onKeyDown消息处理函数,如图示:
2)在PlaneView.cpp文件中,在系统自动产生的函数框架里添加如下所示代码:
到此,编译链接运行程序得到可执行文件Plane.exe,产生如图示的效果,这时用上下左右箭头就可以移动飞机了。试一试!;添加的代码;下面开始制作下落的陨石;添加代码;3.在PlaneView.cpp文件中,修改构造函数CPlaneView::CPlaneView();4. 实现自定义的绘制陨石的函数DrawStone1
方法如下:
void CPlaneView::Draw
您可能关注的文档
最近下载
- 苏轼定风波课件PPT.ppt
- 医院智慧能源解决方案-.ppt
- 初中英语新外研版七年级上册Unit 5 Fantastic friends课文讲解(2024秋).doc
- 中国居民膳食指南2024版 .pdf VIP
- 大学军事理论课教程第二章国家安全第三节 国际战略形势.pptx
- 儿童幽门螺杆菌感染诊治专家共识.pptx VIP
- 怡安翰威特-泰康在线人力资源管理优化项目建议书_20170816.pdf VIP
- 初中英语新外研版七年级上册Unit 6课文解析(2024秋).doc
- 认真学习和领会《中国章程》-公需课:课后答案(全).docx
- 2024“学宪法、讲宪法”法治知识竞赛第八届全国中小学法治知识竞赛题库及答案.doc
文档评论(0)