欢迎来到天天文库
浏览记录
ID:19670854
大小:98.50 KB
页数:15页
时间:2018-10-04
《课程设计mfc打字游戏》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、附件:集中上机实习报告封面模板集中上机实习报告指导教师:甘玲姓名:陈琪学号:2010211794班级:0491002时间:一、需求分析1.选题接到课程设计任务后,我们对曾经非常感兴趣的几款经典小游戏作了分析并筛选,然后根据老是给的推荐题目以及自己的编程能力做了选择,决定了编写在dos化境下的打字游戏,锻炼在自己对函数,指针,类的综合运用,以及对颜色控制函数的使用。2.功能在windows窗口环境下实现打字游戏的运行,正确与错误字符的统计,以及时间的统计。游戏开始后,屏幕上方同时有四个数字分四列下落,
2、每个数字由三位组成(随机生成,但首位不可相同)。玩家用键盘依次输入数字,如果输入的数字序列与某一列正在下落的数字三位全部相同,则给玩家加10分,该列数字消失,该列新产生数字并下落;如果输入的数字某一位不相同,则输入的数字序列全部作废,重新接收输入。某一列数字到达屏幕底部则游戏结束二、总体设计说明1.设计思路用结构体存储每组数字,然后利用MFC里面的Timer作为时间流程,并重写对话框类里面的OnPaint()函数实现图形的绘制2.程序框图操作控制:如图1所示结束判断正误输入开始游戏打字游戏三、代码实
3、现本程序MFC主要代码//打字游戏Dlg.cpp:implementationfile////打字游戏Dlg.h:headerfile//#if!defined(AFX_DLG_H__C9D22D72_CFA5_4621_8784_36A4BE47F2E5__INCLUDED_)#defineAFX_DLG_H__C9D22D72_CFA5_4621_8784_36A4BE47F2E5__INCLUDED_#if_MSC_VER>1000#pragmaonce#endif//_MSC_VER>100
4、0///////////////////////////////////////////////////////////////////////////////CMyDlgdialogstructNumber{intn[3];intx;inty;intcolor[3];//判断是否被键入};classCMyDlg:publicCDialog{//Constructionpublic:CMyDlg(CWnd*pParent=NULL);//standardconstructor//DialogData
5、//{{AFX_DATA(CMyDlg)enum{IDD=IDD_MY_DIALOG};//NOTE:theClassWizardwilladddatamembershere//}}AFX_DATA//ClassWizardgeneratedvirtualfunctionoverrides//{{AFX_VIRTUAL(CMyDlg)public:virtualBOOLPreTranslateMessage(MSG*pMsg);protected:virtualvoidDoDataExchange(
6、CDataExchange*pDX);//DDX/DDVsupport//}}AFX_VIRTUAL//Implementationprotected:HICONm_hIcon;structNumbernumber[4];//数字intflag,now;//flag为选中列,now为位数//GeneratedmessagemapfunctionsvoidSetInit();//初始化随机数intisSame();//判断是否相同intisWin(intflag);//判断成功voidsetNew(i
7、ntflag);//新增随机数intisLost();//判断是否失败intcount;//记分器//{{AFX_MSG(CMyDlg)virtualBOOLOnInitDialog();afx_msgvoidOnSysCommand(UINTnID,LPARAMlParam);afx_msgvoidOnPaint();afx_msgHCURSOROnQueryDragIcon();afx_msgvoidOnTimer(UINTnIDEvent);afx_msgvoidOnstart();afx_m
8、sgvoidOnabout();//}}AFX_MSGDECLARE_MESSAGE_MAP()};//{{AFX_INSERT_LOCATION}}//MicrosoftVisualC++willinsertadditionaldeclarationsimmediatelybeforethepreviousline.#endif//!defined(AFX_DLG_H__C9D22D72_CFA5_4621_8784_36A4BE47F2E5__INCLUDED_)
此文档下载收益归作者所有