logo资料库

基于MFC的多媒体视频播放器-课程设计.doc

第1页 / 共14页
第2页 / 共14页
第3页 / 共14页
第4页 / 共14页
第5页 / 共14页
第6页 / 共14页
第7页 / 共14页
第8页 / 共14页
资料共14页,剩余部分请下载后查看
0引言
1 工作计划
1.1主要工作阶段划分
1.2工作任务分工
2需求分析
2.1概述
2.2用户分析
2.3 约束条件
2.4功能需求
2.5用户界面需求
3设计与实现
3.1概述
3.2详细设计
3.1.1类的抽象及设计
3.3 主要程序文件
3.4开发环境以及部署环境要求
3.5 主要源码
4 测试
4.1概述
4.2 测试环境
4.3测试计划
4.4测试项目及结果
5、工作总结
5.1工作成果
5.2过程分析
5.3经验教训及其分析
(设计标题) 多媒体播放器 用户签名: 开发成员: 开发时间: 孟凡林 2010—12-23 第 页
目录 0 引言.................................................................................................. 4 1 工作计划..........................................................................................4 1.1 主要工作阶段划分..................................................................... 4 1.2 工作任务分工.............................................................................4 2 需求分析...........................................................................................4 2.1 概述............................................................................................ 4 2.2 用户分析.....................................................................................5 2.3 约束条件....................................................................................5 2.4 功能需求.....................................................................................5 2.5 用户界面需求.............................................................................5 3 设计与实现.......................................................................................5 3.1 概述............................................................................................ 5 3.2 详细设计.....................................................................................6 3.1.1 类的抽象及设计...................................................................... 6 3.3 主要程序文件............................................................................6 3.4 开发环境以及部署环境要求......................................................7 3.5 主要源码....................................................................................7 第 页
4 测试................................................................................................11 4.1 概述...........................................................................................11 4.2 测试环境..................................................................................11 4.3 测试计划...................................................................................11 4.4 测试项目及结果....................................................................... 11 5、工作总结......................................................................................12 5.1 工作成果...................................................................................12 5.2 过程分析...................................................................................13 5.3 经验教训及其分析................................................................... 13 第 页
0 引言 现在人们娱乐的方式多种多样,已经有了很明显的变化,以前的户外运动现在已经在锐减, 换而之的是网络游戏与网上聊天,而在同时听听音乐看看电影也成为了巨大的需求,所以很 多多媒体播放软件出现了,形形色色各种都有,而我也赶下时髦,体验一下编写的过程,现 在才发现这并不难,重要的是插件的插入,而其他的功能实现只需调用相应函数就行了! 1 工作计划 1.1 主要工作阶段划分 12 月 20—21 12 月 22—23 12 月 24 日 12 月 26 搜索相关资料,学习基础知识,大致设计框架 考虑所用到的数据结构,函数及其作用,做较为细致的分析 设计开始,仔细设计! 写报告 (用表格或图表的形式列出你们小组各个阶段的时间进度大致安排) 1.2 工作任务分工 阶段名称 任务名称 任务描述 1234 全部 编写软件 负责人 孟凡林 协助人 孟凡林 2 需求分析 2.1 概述 1)到网上或图书馆查找相关系统函数实现相应的功能; 2)使用 MFC 构建相应的用户界面 第 页
2.2 用户分析 1)要求有稳定的性能,可实现要求的功能; 2)拥有较好的界面,很方便人操作! 2.3 约束条件 (作为开发人员的,通常你的小组的工作时间和人员是一个明显约束;另外站在用户的角度, 他们对你有什么约束要求,请从这两个角度进行陈述。) 2.4 功能需求 能够打开文件放进播放列表,点击播放键使其播放,暂停键暂停,停止键停止,重播键重新 播放,全屏键全屏播放,退出键退出程序,增大键增大音量,减小键减小音量! 2.5 用户界面需求 3 设计与实现 3.1 概述 使用 MFC 构建相应的用户界面,实现相应的功能----------能够打开文件放进播放列表,点击 播放键使其播放,暂停键暂停,停止键停止,重播键重新播放,全屏键全屏播放,退出键退 第 页
出程序,增大键增大音量,减小键减小音量,然后向其中加入各个函数实现相应的功能! 3.2 详细设计 3.1.1 类的抽象及设计 1)控件 active movie3 类,主要用来播放各种类型的文件,其封装的各种成员函数使其成为 MFC 设计播放器必不可少的控件类; 2)对话框基类 cDlg 类,及其派生类: (a)控件 repeatbtn 类,作为播放器打开文件的消息响应媒介,能够做到被点击时再次播 放打开的文件; (b)控件 copenbtn 类,作为播放器打开文件的消息响应媒介,能够做到被点击时提供资源 管理器供用户选择文件; (c)控件 playbtn 类,作为播放器打开文件的消息响应媒介,能够做到被点击时播放打开 的文件; (d)控件 pausebtn 类,作为播放器打开文件的消息响应媒介,能够做到被点击时暂停播放 打开的文件; (e)控件 lowerbtn 类,作为播放器打开文件的消息响应媒介,能够做到被点击时减小播放 音量; (f)控件 upperbtn 类,作为播放器打开文件的消息响应媒介,能够做到被点击时增大播放 音量 (g)控件 stopbtn 类,作为播放器打开文件的消息响应媒介,能够做到被点击时停止播放 打开的文件; (h)控件 fullscreen 类,作为播放器打开文件的消息响应媒介,能够做到被点击时全屏播放打 开的文件; 至于其他的,当我们使用 MFC 编程时,会有很多封装的类供我们使用,所以就不一一列举 了! 3.3 主要程序文件 1)头文件(为类加入相应的标准流,库): Activemovie3.h-------控件; stdafx.h-----框架构成; 多媒体.h-----多媒体的应用; 多媒体 Dlg.h------对话框; resourse.h-----为多媒体.rc 服务! 2)源文件(完成各种类的定义与实现): Activemovie3.cpp-------控件; stdafx.cpp-----框架构成; 多媒体.cpp----多媒体的应用; 第 页
多媒体 Dlg.cpp------对话框; 多媒体.rc-----运行过的效果! 3.4 开发环境以及部署环境要求 1) Vs2010; 2) 3.5 主要源码 1)打开文件 void CMyDlg::OnOpenButton() { // TODO: Add your control notification handler code here CString strFilter = "Mp3 File(*.mp3)|*.mp3| "; strFilter strFilter strFilter strFilter += += += += 现参数不正确 "MPEG File(*.mpg;*.mpeg)|*.mpg;*.mpeg| "; "Wave File(*.wav)|*.wav| "; "AVI "All File(*.avi)|*.avi| "; File(*.*)|*.*| "; //过滤适当的文件必须以0区分,以00结束,否则会出 CFileDialog dlgOpen(TRUE,NULL,NULL,OFN_PATHMUSTEXIST | OFN_HIDEREADONLY | OFN_ALLOWMULTISELECT,strFilter,this);//为CFileDialog定义对象 DWORD MAXFILE = 2412; // 分配足够空间 dlgOpen.m_ofn.nMaxFile = MAXFILE; // 设置buffer的大小 CString strFileName; char* buf = new char[MAXFILE]; //分配空间 dlgOpen.m_ofn.lpstrFile = buf; dlgOpen.m_ofn.lpstrFile[0] = NULL; //赋值 if(IDOK == dlgOpen.DoModal()) { POSITION pos = dlgOpen.GetStartPosition(); while (pos != NULL) { strFileName = dlgOpen.GetNextPathName(pos); // 获取独立文件名 m_list1.InsertString(m_list1.GetCount(),strFileName);//加至播放列表 } 第 页
} delete [] buf; //释放空间 } 2)播放文件 void CMyDlg::OnPlayButton() { // TODO: Add your control notification handler code here m_ActiveMovie.Run();//播放文件 SetTimer(0,20,NULL);//设置定时器 } 3)暂停播放 void CMyDlg::OnPauseButton() // TODO: Add your control notification handler code here m_ActiveMovie.Pause(); { } 4.停止播放 void CMyDlg::OnStopButton() { // TODO: Add your control notification handler code here m_ActiveMovie.Stop();//停止播放文件 KillTimer(0);//关掉定时器 } 5.重复播放 void CMyDlg::OnReapetButton() { // TODO: Add your control notification handler code here if(!isRepeat) { isRepeat=TRUE; SetDlgItemText(IDC_STATIC2,"Status:Repeat"); } else{ isRepeat=FALSE; SetDlgItemText(IDC_STATIC2,"Status:Normal"); 第 页
分享到:
收藏