




已阅读5页,还剩9页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第 页(设计标题)多媒体播放器用户签名: 开发成员: 孟凡林 开发时间: 201012-23 第 页目录0 引言 .31 工作计划 .31.1 主要工作阶段划分 .31.2 工作任务分工 .32 需求分析 .32.1 概述 .32.2 用户分析 .42.3 约束条件 .42.4 功能需求 .42.5 用户界面需求 .43 设计与实现 .43.1 概述 .43.2 详细设计 .53.1.1 类的抽象及设计 .53.3 主要程序文件 .53.4 开发环境以及部署环境要求 .63.5 主要源码 .6第 页4 测试 .104.1 概述 .104.2 测试环境 .104.3 测试计划 .104.4 测试项目及结果 .105、工作总结 .115.1 工作成果 .115.2 过程分析 .125.3 经验教训及其分析 .12第 页0 引言现在人们娱乐的方式多种多样,已经有了很明显的变化,以前的户外运动现在已经在锐减,换而之的是网络游戏与网上聊天,而在同时听听音乐看看电影也成为了巨大的需求,所以很多多媒体播放软件出现了,形形色色各种都有,而我也赶下时髦,体验一下编写的过程,现在才发现这并不难,重要的是插件的插入,而其他的功能实现只需调用相应函数就行了!1 工作计划1.1 主要工作阶段划分12 月 2021 搜索相关资料,学习基础知识,大致设计框架12 月 2223 考虑所用到的数据结构,函数及其作用,做较为细致的分析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 hereCString strFilter = “Mp3 File(*.mp3)|*.mp3| “; strFilter += “MPEG File(*.mpg;*.mpeg)|*.mpg;*.mpeg| “; strFilter += “Wave File(*.wav)|*.wav| “; strFilter += “AVI File(*.avi)|*.avi| “; strFilter += “All 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 charMAXFILE; /分配空间dlgOpen.m_ofn.lpstrFile = buf; dlgOpen.m_ofn.lpstrFile0 = 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 herem_ActiveMovie.Run();/播放文件SetTimer(0,20,NULL);/设置定时器3)暂停播放void CMyDlg:OnPauseButton() / TODO: Add your control notification handler code herem_ActiveMovie.Pause();4停止播放void CMyDlg:OnStopButton() / TODO: Add your control notification handler code herem_ActiveMovie.Stop();/停止播放文件KillTimer(0);/关掉定时器5重复播放void CMyDlg:OnReapetButton() / TODO: Add your control notification handler code hereif(!isRepeat)isRepeat=TRUE;SetDlgItemText(IDC_STATIC2,“Status:Repeat“); elseisRepeat=FALSE;第 页SetDlgItemText(IDC_STATIC2,“Status:Normal“);6增大声音void CMyDlg:OnUpperButton() / TODO: Add your control notification handler code herelong Volume=m_ActiveMovie.GetVolume();m_ActiveMovie.Pause();m_ActiveMovie.SetVolume(Volume+100);m_ActiveMovie.Run();7减小声音void CMyDlg:OnLowerButton() / TODO: Add your control notification handler code herelong Volume=m_ActiveMovie.GetVolume();m_ActiveMovie.Pause();m_ActiveMovie.SetVolume(Volume-100);m_ActiveMovie.Run();8全屏播放void CMyDlg:OnFullButton() / TODO: Add your control notification handler code herem_ActiveMovie.Pause();m_ActiveMovie.SetFullScreenMode(true);m_ActiveMovie.SetMovieWindowSize(SW_SHOWMAXIMIZED);m_ActiveMovie.Run();9关闭窗口void CMyDlg:
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 婴儿用品连锁店纸尿裤芯体采购与库存管理合同
- 2025年中国安福乐注射液市场调查研究报告
- 2025年中国半封闭拉丝焊机枪市场调查研究报告
- 2025年中国分散深棕染料市场调查研究报告
- 2025年中国信号延长器市场调查研究报告
- 2025年中国丝巾扣市场调查研究报告
- 2025年房地产中介服务项目发展计划
- 2025年天文测量仪器项目发展计划
- 2025商业银行代理高等教育助学贷款借款合同样本
- 2025企业融资租赁合同格式
- 2025年二级注册建筑师《建筑经济、施工与设计业务管理》考试真题卷(附解析)
- 中外航海文化知到课后答案智慧树章节测试答案2025年春中国人民解放军海军大连舰艇学院
- 电工技术基础与技能教案(第3版)
- 自动交换光网络(ASON)课件
- 鼻咽癌护理查房-PPT课件
- 大客户销售管理培训方案(共31页).ppt
- 土建安全员考试试题及答案(500题)
- DB4201∕T 650-2021 武汉市排水管网隐患数据库标准
- (完整版)建设项目经济评价方法与参数(第三版)
- 霍尼韦尔IPM-Vista网络接口模块安装使用说明书
- 外墙钢管脚手架施工承包合同
评论
0/150
提交评论