基于mfc的音乐播放器

上传人:kms****20 文档编号:40368957 上传时间:2018-05-26 格式:DOC 页数:16 大小:930.08KB
返回 下载 相关 举报
基于mfc的音乐播放器_第1页
第1页 / 共16页
基于mfc的音乐播放器_第2页
第2页 / 共16页
基于mfc的音乐播放器_第3页
第3页 / 共16页
基于mfc的音乐播放器_第4页
第4页 / 共16页
基于mfc的音乐播放器_第5页
第5页 / 共16页
点击查看更多>>
资源描述

《基于mfc的音乐播放器》由会员分享,可在线阅读,更多相关《基于mfc的音乐播放器(16页珍藏版)》请在金锄头文库上搜索。

1、VisualVisual C+C+程序设计课程大作业程序设计课程大作业题目名称: 基于 MFC 的音乐播放器 系 名 称: 计算机科学与信息工程学院 专业班级: 09 计科应用 2011 年 6 月目目 录录一、成员分工 .1二、需求分析 .2三、总体设计 .3四、详细设计 .4五、系统测试 .11六、总结 . 13七、参考文献 .141一、一、 成员分工成员分工组长:肖景元组员:周国庆 徐思勇组长肖景元:负责整个工程设计的选材和功能的添加以及代码的设计。周国庆:负责对话框的设计、制作、控件的添加。徐思勇:负责工程的功能测试与修改。2二、需求分析二、需求分析我们需要制作一个音乐播放器,具有一般

2、播放*.mp3,*.wma,*.mdi,*.wav,*.avi,*.dat 等文件,还有具有播放、暂停、重复播放、音量调节、Repeat 功能等功能。需要解决的问题是向对话框中添加音乐播放的控件,以及各按键功能的实现。3三、总体设计三、总体设计1、系统功能模块图(如图一):基于 MFC 的音乐播放器播 放 器 开 关音 乐 播 放音 量 增 减隐 藏 进 度 条开 启关 闭暂 停播 放终 止音 量 加音 量 减隐 藏出 现图一:系统功能模块图2、流程图(如图二):4添加音乐开始播放暂停终止播放结束退出图二:系统流程图四、详细设计四、详细设计OnOpen 添加音乐OnPlay 开始播放OnSto

3、p 停止播放OnPause 暂停播放OnUpper 音量增加OnLower 音量降低OnRepeat 重复播放OnFulscreeen 全屏播放OnClose 窗口最小化相应的添加变量:CRoundButton m_Open;CRoundButton m_Play;CRoundButton m_Stop; CRoundButton m_Close; CRoundButton m_Pause;5CRoundButton m_Upper;CRoundButton m_Lower;CRoundButton m_Repeat;CRoundButton m_Exit;CRoundButton m_Ful

4、lScreen;详细步骤:1、建立基于对话框(Dialog Based)的运用程序。2、在上面添加按钮,ID 和 Caption 分别为IDC_OPEN,Open;IDC_PLAY,Play;IDC_PAUSE,Pause;IDC_STOP,Stop;IDC_CLOSE,Close;IDC_LOWER,;IDC_FULLSCREEN,Full;IDC_REPEAT,Repeat;3、再打开 Projects-Add to Project-Components and Controls-Registered ActiveX Controls 对话框,选择其中的 Active Movie Cont

5、rol Object, Insert,OK 之后,你会发现你的控件面板上多了一项 ActiveMovieControl Object,将它选中,直接放在你的对话框上就行了。按 Ctrl+W 打开 ClassWizard 为它添加变量 CActiveMovie3 m_ActiveMovie。4为程序添加消息处理函数。打开 ClassWizard,为各个按钮加入消息处理函数。在MediaPlayerDlg.cpp 文件里为各消息处理函数添加代码。(1)首先,在 MediaPlayerDlg.h 中添加如下:6public:BOOLBOOL flag;flag;CMediaPlayerDlg(CWn

6、d* pParent = NULL);/ standard constructor(2)播放窗口最小化按钮:最小化void CMediaPlayerDlg:OnClose() if(flag=false)m_ActiveMovie.ShowWindow(SW_HIDE);/关闭窗口flag=true;elsem_ActiveMovie.ShowWindow(SW_SHOW);flag=false;(3)添加音乐按钮:void CMediaPlayerDlg:OnOpen() char szFileFilter=“Mp3 File(*.mp3)|*.mp3|“7“Wma File(*.wma)|

7、*.wma|“Video File(*.dat)|*.dat|“Wave File(*.wav)|*.wav|“AVI File(*.avi)|*.avi|“Movie File(*.mov)|*.mov|“Media File(*.mmm)|*.mmm|“Mid File(*.mid;*,rmi)|*.mid;*.rmi|“MPEG File(*.mpeg)|*.mpeg|“All File(*.*)|*.*|“;/文件类型过滤CFileDialog dlg(TRUE,NULL,NULL,OFN_HIDEREADONLY,szFileFilter);if(dlg.DoModal()=IDOK

8、)CString PathName=dlg.GetPathName();PathName.MakeUpper();m_ActiveMovie.SetFileName(PathName);(4)播放音乐按钮:void CMediaPlayerDlg:OnPlay() m_ActiveMovie.Run();/播放文件SetTimer(0,20,NULL);/设置定时器8(5)停止播放按钮:void CMediaPlayerDlg:OnStop() m_ActiveMovie.Stop();/停止播放文件KillTimer(0);/关掉定时器(6)暂停播放按钮:void CMediaPlayerD

9、lg:OnPause() if(flag=false)m_ActiveMovie.Pause();flag=true;SetDlgItemText(IDC_PAUSE,“播放“);elseOnPlay();flag=false;SetDlgItemText(IDC_PAUSE,“暂停“);(7)音量增加按钮:9void CMediaPlayerDlg:OnUpper() long Volume=m_ActiveMovie.GetVolume();m_ActiveMovie.Pause();m_ActiveMovie.SetVolume(Volume+100);m_ActiveMovie.Run

10、();(8)音量降低按钮:void CMediaPlayerDlg:OnLower() long Volume=m_ActiveMovie.GetVolume();m_ActiveMovie.Pause();m_ActiveMovie.SetVolume(Volume-100);m_ActiveMovie.Run();(9)重复播放按钮:void CMediaPlayerDlg:OnRepeat() if(!isRepeat)isRepeat=TRUE;SetDlgItemText(IDC_STATIC2,“Status:Repeat“); 10elseisRepeat=FALSE;SetDl

11、gItemText(IDC_STATIC2,“Status:Normal“);(10)全屏按钮:void CMediaPlayerDlg:OnFulscreeen() m_ActiveMovie.Pause();m_ActiveMovie.SetFullScreenMode(true);m_ActiveMovie.SetMovieWindowSize(SW_SHOWMAXIMIZED);m_ActiveMovie.Run();5为使播放器具有 Repeat 功能,需在头文件 MediaPlayerDlg.h 加入控制变量 BOOL isRepeat;类型可为 Private。同时修改 OnIn

12、itDialog()函数: BOOL CMediaPlayerDlg:OnInitDialog()CDialog:OnInitDialog();isRepeat=FALSE;11五、系统测试五、系统测试1、打开初始程序(如图三):图三;程序初始界面2、点击“打开” ,添加播放资源(如图四) 。12图四;音乐库3、单击“播放” ,开始播放。点击“暂停” ,暂停播放。再次点击“暂停”按钮,继续播放(如图五) 。图五;播放4、单击“终止” ,音乐播放停止,之后单击“播放” ,重头开始播放。5、单击“最小化” 。播放器消失,再次点击出现。 (如图六)13图六;隐藏进度条六、总结六、总结本次实验设计在本

13、组成员团结合作下,终于完成了。仔细回想起实验设计,发现在软件设计的功能上,我们做的虽没有特别新的功能,但做出的功能都比较实用,做出了一个音乐播放器所必备的元素,在这一点上还是比较成功的。我们设计的播放器小巧,比较节省空间。当然,这个播放器也有许多的不足之处,如播放器的功能太少,太过于简单,播放器的画面太单调,很空洞,当然,这些地方都需要改进,虽然本次试验设计做的不是很完美,但我们从中获得了很多经验,起码下次再做类似的的设计时更能节省时间且能做的更好更快。从本次实验设计中,我们学到了很多东西,如在计算机编程设计中,团队合作是十分重要的:要经常的编写一些程序,这样编写程序时才能很灵活。14七、参考文献七、参考文献郑阿奇 丁有和 编著 visual C+教程(第 2 版).机械工业出版社.2008 年 8 月.候俊杰 编著 深入浅出 MFC(第二版).华中科技大学出版社.2001 年 1 月.David J. Kruglinski Visual C+技术内幕(第四版).清华大学出版社. 1999 年1 月.孙鑫 余安萍 编著 vc+深入详解.电子工业出版社.2006 年 6 月.

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 科普知识

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号