最新mfc课程设计.docx
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《最新mfc课程设计.docx》由会员分享,可在线阅读,更多相关《最新mfc课程设计.docx(30页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、Four short words sum up what has lifted most successful individuals above the crowd: a little bit more.-author-datemfc课程设计郑州工业应用技术学院郑州工业应用技术学院课程设计说明书题目: 音频播放器 姓 名: 田鹏 院 (系): 信息工程学院 专业班级: 14级计算机科学与技术一班 学 号: 1401110105 指导教师: 张吉同 成 绩: 时间: 年 月 日至 年 月 日-郑州工业应用技术学院课程设计任务书题目 音频播放器 专业、班级14级计算机科学与技术一班 学号1401
2、110105姓名_田鹏_主要内容: 音频播放器,是目前用户选择播放任意格式的音频文件的软件,如酷狗、QQ音乐等。一般的音频播放器,都可以支持MP3、wave、AU、VOC等文件格式的播放。 在此次设计的音频播放其中,可以实现对音频文件的打开、播放、暂停、停止、上一曲/下一曲、歌词显示等操作。对于播放器的界面,可以最小化,并显示到托盘。处于最小化的状态下,依然可以对正在播放的文件进行上述操作。在此播放器中,最具特点的是在各个操作按钮以及整个界面上添加了位图和能将窗口最小化。播放器窗口的建立,也有区别与传统的有菜单显示的窗口。最小化到托盘后,仍可以进行操作,也可以选择退出。对于实现播放、停止、上一
3、曲/下一曲、添加文件,都是利用CMidi这个类来存放实现这些功能的函数。需要的时候调用就可以。为了是界面更美观,让人看起来更舒服,加入了位图背景。目前还没有实现用户根据自己的喜好来更改背景图案。 主要参考资料:1姬涛、周启生,计算机程序设计基础(上册)Z,北京:中国传媒大学出版社,2010 2谭浩强,C程序设计教程Z,北京:清华大学出版社,2007 3任哲,MFC Windows应用程序设计(第二版)Z,北京:清华大学出版社,2007完 成 期 限: 指导教师签名: 课程负责人签名: 年 月 日摘要音频播放器,是目前用户选择播放任意格式的音频文件的软件,如酷狗、QQ音乐等。一般的音频播放器,都
4、可以支持MP3、wave、AU、VOC等文件格式的播放。 在此次设计的音频播放其中,可以实现对音频文件的打开、播放、暂停、停止、上一曲/下一曲、歌词显示等操作。对于播放器的界面,可以最小化,并显示到托盘。处于最小化的状态下,依然可以对正在播放的文件进行上述操作。在此播放器中,最具特点的是在各个操作按钮以及整个界面上添加了位图和能将窗口最小化。播放器窗口的建立,也有区别与传统的有菜单显示的窗口。最小化到托盘后,仍可以进行操作,也可以选择退出。对于实现播放、停止、上一曲/下一曲、添加文件,都是利用CMidi这个类来存放实现这些功能的函数。需要的时候调用就可以。为了是界面更美观,让人看起来更舒服,加
5、入了位图背景。目前还没有实现用户根据自己的喜好来更改背景图案。 通过这次课程设计,更加巩固了我们所学的知识。目录摘要.II第一章 课题背景和概述.11.1 课题背景.11.1.1 音频播放器简介.11.1.2 目的和意义 .11.2 课题概述.11.2.1 功能简介.11.2.2 主要工作和理论依据 .1第二章 设计简介及设计方案论述 .32.1 需求分析 .32.2 系统功能及结构简介 .32.2.1 系统功能 .32.2.2 系统结构.3第三章 详细设计 .43.1 界面设计 .43.1.1 播放器界面设计 .43.1.2 按钮上的位图显示.53.2 各模块功能设计.63.2.1 各按钮功
6、能的实现.63.2.2 最小化到托盘.73.2.3 进度条显示 .7第四章 设计结果及分析.84.1 运行结果显示 .84.1.1打开文件并播放 .84.1.2 最小化 .84.1.3 歌词显示.94.2 结果分析和不足.9总 结 .10致 谢 .11参考文献.12附 录.13第一章 课题背景和概述1.1 课题背景 1.1.1 音频播放器简介 音频播放器(audio player)是一种可储存、组织与播放音讯档案格式的装置。常被称为“MP3播放器”(因为MP3格式的普遍性),它可以播放很多其他的格式,如WMA,AAC,WAV等。一些格式会跟有限制性的技术 DRM合并, 比如Janus和Fair
7、Play, 一般是一些付费下载网站的一部分。其它一些格式则是完全的专利自由或者在另外一些方面开放,比如Ogg Vorbis,FLAC,Speex (Ogg开放多媒体工程的所有部分),以及Module file格式。 1.1.2 目的和意义 通过独立设计完成制作一个播放器软件,更加理解了MFC单文档和多文档程序的构成框架,以及各个类之间数据传递的关系。同时,对鼠标和键盘的多消息响应有了进一步的认识。在设计制作的过程中,C+语言是基础,在熟悉MFC Windows 程序设计的同时,也复习了C+程序语言设计。 1.2 课题概述 1.2.1 功能简介 本次设计完成的播放器软件,能够支持播放多种格式的音
8、频文件,常见的如MP3,WMA,AAC,WAV等。对正在播放的歌曲,可以进行暂停、停止的操作,也可以任意添加歌曲并选择播放。此播放器也可以最小化和最小化到托盘,方便用户在播放音乐的时候,免受打扰。也可以在最小化到托盘的状态下,退出播放器。本次课程设计,主要是检验这一学期,我们通过对MFC Windows应用程序设计这门课学习,能够把所学的知识应用到实际的能力。 1.2.2 主要工作和理论依据 MFC类库将所有图形用户界面的元素如窗口、菜单和按钮等都以类的形式进行了封装,MFC AppWizard向导根据继承性利用MFC派生出自己的类,并对Windows应用程序进行了分解,利用MFC派生类对应用
9、程序重新进行组装,同时还规定了应用程序中各个MFC派生类对象之间的相互联系,实现了标准Windows应用程序的功能,这就是向导生成的所谓MFC应用程序框架。每个MFC类都包括了一些函数,函数放到类中,符合C+编程方法。这些函数,必须通过类定义对象才能使用。在本次设计中,首先,理清课程设计和编写程序的思路,明确程序中所要用到的函数,并做好了解。然后,再利用C+类的继承与派生原理来构造所需要的类,编写实现每项功能的详细代码。利用MFC提供的菜单资源来创建菜单,通过类向导建立类,函数,或者消息响应,来实现播放器的各种功能。采用不同的Windows提供的坐标系统和对话框资源,并利用设备环境来绘制和更新
10、图形,使播放器的界面更加美观,实现较好的人机交互界面。第二章 设计简介及设计方案论述2.1 需求分析 随着社会的发展,有越来越多的人接触电脑,也有越来越多的人喜欢在上网、工作的时候,播放一点音乐,娱乐一下,缓解一下。所以,应运而生的是音频播放器软件,能够为用户播放常见的格式音频文件。并且,在使用的过程中,也尽可能设计出一些人性化的设计。比如,能最小化到托盘并可以进行操作。良好的人机交互界面,也能给人以美好的感官享受。 2.2 系统功能及结构简介 2.2.1 系统功能 此音频播放器可以播放多格式的音频文件。在播放的时候,需要打开本地的音乐文件,选择想要打开的文件,点击播放便可以播放。 在播放的过
11、程中,如果有事离开想要停止播放,可以点击暂停按钮,等到需要的时候,仍然可以点击播放,继续播放。如果需要退出,点击关闭按钮即可。如果是出于最小化到托盘的状态,点击右键选择退出即可。如果想换首歌,点击下一首或者上一首的按钮便可以了。 对于想详细了解歌曲歌词内容,点击界面上的“歌词按钮”,便可以显示歌词。 为了能够让在进行其它操作的用户不受打扰,可以将此播放器最小化到托盘。与此同时,用户依然能够通过点击鼠标右键进行相关的操作。 2.2.2 系统结构 此播放器编写的时候,利用的是MFC单文档程序的构成框架,然后再利用Windows提供的资源,运用控件,自己制作了对话框和人机交互界面。在制作界面的同时,
12、也制作了各个按钮,并完成各个按钮的消息响应,便完成响应函数实现了功能。第三章 详细设计3.1 界面设计 3.1.1 播放器界面设计 此播放器的界面是利用控件和位图的结合制作出来了。 打开VC C+6.0新建一个工程,选择单文档。便生成了一个窗口。然后打开ResouceView,点开Dialog,插入Dialog,利用控件,绘制各个按钮。为了使各个按钮更加美观,使用位图,用自己收集的图片将各个按钮覆盖,最后添加消息响应函数,实现各个功能。 为了使所引入的位图能够和所绘制的窗口能完全吻合,在OnPaint()函数中,调用StretchBlt()函数,让其从源矩形中复制一个位图到目标矩形,必要时按目
13、前目标设备设置的模式进行图像的拉伸或压缩。图3-1 按钮控制最后生成的界面比较美观,给人的感觉良好图3.2 播放器界面3.1.2 按钮上的位图显示 为对话框添加9个按钮(Button),在Styles标签中选中Bitmap属性。将它们的ID分别为IDC_Play,IDC_Stop_BUTTON,IDC_Next_BUTTON,IDC_Pre_BUTTON,IDC_Add_Song, IDC_Delet_Song,IDC_GC_BUTTON,IDC_MinWindow,ID_CloseWindow以实现对文件的各项操作。将5幅准备好的位图加入资源,其ID分别设为IDC_Play,IDC_Stop
14、_BUTTON,IDC_Next_BUTTON,IDC_Pre_BUTTON,IDC_Add_Song,IDC_Delet_Song,IDC_GC_BUTTON,IDC_MinWindow,ID_CloseWindow,分别和5个按钮相对应。然后,在ClassWizard里为每个按钮分别添加一个CBitmapButton型的变量,分别命名为m_BitmapBtn_Delete;m_BitmapBtn_Stop;m_BitmapBtn_MinWindow;m_BitmapBtn_MaxWindow;m_BitmapBtn_CloseWindow;m_BitmapBtn_NextSong;m_Bi
15、tmapBtn_UpSong;m_BitmapBtn_paly;m_BitmapBtn_Add;m_BitmapBtn_GC;以对按钮进行操作。3.2 各模块功能设计 3.2.1 各按钮功能的实现 (1)处理“打开”按钮 单击“打开”按钮后,在OnAddSong()函数中,首先对文件类型进行过滤,调用OpenFiles()函数打开对话框选择一个音频文件,通过InitPath()函数获取文件路径,通过InitPath()函数获取文件名后,调用SaveList()函数在Static Text控件上显示你所选择的歌曲文件名,然后再单击播放按钮,便可以播放歌曲。 (2) 处理“播放”按钮 单击“播放”
16、按钮后,在OnPlay()函数中,通过调用Midi类中的Open()函数获取刚才选择的文件路径以及文件名,调用该类的Midi类中的Play()函数播放歌曲,此时调用DisplayInfo()函数在Static Text控件上显示正在播放的歌曲,进行歌曲的播放,然后利用GetDlgItem()函数设置“播放”按钮不可用。 (3) 处理“停止”按钮 单击“停止”按钮后,在OnStopBUTTON()函数中,首先通过调用Midi类的Stop()函数停止正在播放的歌曲,此时的歌曲处于暂停时的进度上,利用GetDlgItem()函数设置“播放”按钮可用。 (5)处理“上一曲/下一曲”按钮 单击“上一曲”
17、按钮时,在OnNextBUTTON()函数中,通过调用Midi类中的Next()函数,停止当前播放放的歌曲,并播放当前列表中的下一曲。“下一曲”按钮的处理与“上一曲”类似。 (6)处理“最小化”按钮 单击“最小化”按钮时,在OnMinWindow()函数中,通过调用ToTray()函数,将当前显示的窗口最小化,并显示在任务栏,在此情况下,仍就可以进行上述操作。 (7)处理“歌词”按钮 单击“歌词”按钮时,会在原有的窗口之外再弹出一个窗口,以此来显示歌词。这需要在这整个工程中新建一个GECI类,来绘制显示歌词的窗口。整个绘制的过程,与界面的设计是相类似的。 (8) 处理“关闭”按钮 单击“关闭”
18、按钮后,在OnCloseWindow()函数中,调用CDialog类的OnOK()函数将退出对话框,结束程序的运行。3.2.2 最小化到托盘 单击“最小化”按钮时,在OnMinWindow()函数中,通过调用ToTray()函数,当先窗口会被最小化至托盘。在这个过程中,ToTray()函数只能实现最小化,并不能实现在最小化的情况下进行操作。 在最小化至托盘后,要进行操作,就定义了一个OnShowTask(WPARAM wParam,LPARAM lParam)的函数,利用if、switch语句进行判断。首先要通过鼠标的行为来获取最小化之后图标的ID。得到响应后,单击右键,显示弹出式menu。m
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 最新 mfc 课程设计
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内