MFC课程设计报告孙建龙.docx
《MFC课程设计报告孙建龙.docx》由会员分享,可在线阅读,更多相关《MFC课程设计报告孙建龙.docx(17页珍藏版)》请在冰点文库上搜索。
![MFC课程设计报告孙建龙.docx](https://file1.bingdoc.com/fileroot1/2023-6/21/57231154-cbc6-4225-8116-92a2b6a14199/57231154-cbc6-4225-8116-92a2b6a141991.gif)
MFC课程设计报告孙建龙
延边大学
本科生课程设计报告
(MFC课程设计)
题目
《Windows程序设计》
学生姓名
孙建龙
指导教师
金元赫
学院
工学院
专业班级
数字媒体技术
学生学号
2114021890
2011级数字媒体技术
2013年7月15日
《Windows程序设计》
计算器、绘图及播放器系统课程设计报告
摘要:
《Windows程序设计》是基于C++的一门编程语言,此次课程设计是基于利用MFC设计简易计算器、绘图工具以及播放器的程序,主要是掌握类以及类的封装,应用程序类和框架类,画笔应用,圆的画法,控件的添加等等。
通过这些程序设计理解和巩固MFC语言的应用。
关键词:
对话框、界面、资源、基础类库;
1、计算器、绘图及播放器系统开发设计思想
要求利用MFC框架在VisualStudio6.0编写简易的计算器、绘图工具以及播放器。
(1)设计目的
通过本课程设计,初步培养通过面向对象的思想解决问题的能力,熟悉软件开发过程,增强对相关专业知识的感性认识,掌握基本软件开发技能,提高应用所学知识在实践中发现问题、分析问题和解决问题的能力。
通过编写简易计算器、绘图工具以及播放器,理解和掌握MFC的设计思路和设计思想。
下面通过简单框架图来说明设计思想以及思路:
其中播放器用插入控件的方式完成。
主体内容是按照MFC基础类库的各个类和资源文件以及动态链接、基于对话框和控件来完成整个系统程序的。
整体框架设置的代码如下:
创建整个窗口的函数代码:
(2)程序整体界面框架
此框架比较简单,直接利用VC++建立一个工程MFCAppWizard[exe]的单文档窗口,然后系统自动生成一个单文档的窗口。
如下图:
然后在源文件的ICON里面IDI_ICON1中修改窗口的图标,如下图一、图二:
图一图二
接下来就是菜单栏的修改。
同样是在源文件里,在Menu里的IDR_MAINFRAME里面添加计算器菜单、绘图菜单和播放器菜单。
如下图:
源文件里面
(完成后)
到此为止整个系统的基本框架就已经出来了,接下来的工作就是具体到程序的每个功能的实现。
2、计算器、绘图及播放器系统功能及系统设计介绍
(1)简易计算器制作
首先是建立计算器的对话框,在对话框里面主要通过按钮和编辑两个来建立。
建立完成的计算器如下图:
其中数字以及各个符号的添加是利用每个按钮的属性进行添加的,具体如下图所示:
接下来就是建立每个按钮的类向导以及创建每个按钮的消息映射函数。
建立类向导(上图)
建立每个按钮的消息映射(上图)
然后就是在CDialog的类里面添加计算器的函数:
具体的函数如下图:
图一:
计算器数字的选取
图二:
计算器各数字以及其他按钮的具体算法:
最后输出运算结果的代码是(如下图):
计算器的运行如下图所示:
(2)吹泡泡程序
吹泡泡程序是利用随机画圆的方法建立的程序系统:
下面是如何在界面里面画圆的函数代码:
在界面中单击鼠标左键时在界面中以鼠标单击的位置为圆心,以随机的数字为半径,画出一个随机的圆:
计算的代码(上图)
鼠标单击画圆的代码(下图)
还有颜色的选择,所以就要有颜色的设置:
其颜色设置的界面如图:
吹泡泡程序运行后的结果如下图:
(3)播放器系统
播放器系统制作是利用控件先建立一个大体的播放器框架,然后在通过添加网上下载的播放器控件,执行播放的功能。
如图是建立的播放器的对话框以及相应的控件:
下面是播放器上面的每个按钮的属性设置:
此为其中之一,其他的按钮均按照此按钮的方法设置。
打开一个文件:
首先设定定时器:
设置停止、暂停按钮:
下面是音量的增加和减小:
往播放器里面添加文件后,播放器的运行如下图:
当添加正确文件后,播放器的运行正常,如下图:
3、计算器、绘图及播放器系统开发的体会
通过此次课程设计,让我对之前所学过的MFC的各种知识以及VC++的一些知识进行全面回顾,巩固了MFC中的各种类的概念,以及对类的封装,既锻炼了自己的动手能力,同时还对所学过得知识有了更深刻的理解,对以后的学习打下了一定的基础。
在此次的课程设计中,我学会了编写一个完整的程序需要注意的各种细节,特别是利用MFC当中的知识:
例如类的封装,多态等等,都是特别有用的内容,当然也是重点中的重点。
编写一个大程序的一开始就必须要对整个程序的框架做出规划,然后再将这个整体进行细化,一个一个完成,最后进行整合,就是一个完整的程序了。
通过这次的课程设计,也找到了自己编程中的不足之处,在以后的学习中可以多注意,也是一种收获!