多媒体播放器 课程设计报告
4.2 测试环境
1)
2)vs2010
4.3测试计划
1)打开文件 2)播放及各种键的使用 3)多次运行,检查稳定性
4.4测试项目及结果
1)打开文件
2)
5、工作总结
5.1工作成果
工作成果不是很明显, 因为我自作自受,霉运连连让我乱了阵脚,最 后的一个大悲剧直接把我将死了!我没有编写出来一个成功的程序,以 失败告终!我完了,Oh,myGod!
(设计标题) 多媒体播放器
用户签名: 开发成员: 孟凡林 开发时间: 2010—12-23
目录 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 测试环境
} 8.全屏播放 void CMyDlg::OnFullButton() {
// TODO: Add your control notification handler code here m_ActiveMovie.Pause(); m_ActiveMovie.SetFullScreenMode(true); m_ActiveMovie.SetMovieWindowSize(SW_SHOWMAXIMIZED); m_ActiveMovie.Run();
被点击时提供资源管理器供用户选择文件; (c)控件playbtn类,作为播放器打开文件的消息响应媒介,能够做到 被点击时播放打开的文件; (d)控件pausebtn类,作为播放器打开文件的消息响应媒介,能够做 到被点击时暂停播放打开的文件; (e)控件lowerbtn类,作为播放器打开文件的消息响应媒介,能够做 到被点击时减小播放音量; (f)控件upperbtn类,作为播放器打开文件的消息响应媒介,能够做 到被点击时增大播放音量 (g)控件stopbtn类,作为播放器打开文件的消息响应媒介,能够做到 被点击时停止播放打开的文件; (h)控件fullscreen类,作为播放器打开文件的消息响应媒介,能够做到 被点击时全屏播放打开的文件; 至于其他的,当我们使用MFC编程时,会有很多封装的类供我们使用, 所以就不一一列举了!
// TODO: Add your control notification handler code here PostQuitMessage(0);//; }
4 测试
4.1概述
1)打开文件(从曲库中找出歌曲加入列表中) 2)播放,暂停,停止,全屏显示,停止,重播(active 能)
movie实现功
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 += "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 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);//加至播放列表 }
3.3 主要程序文件
1)头文件(为类加入相应的标准流,库): Activemovie3.h-------控件; stdafx.h-----框架构成; 多媒体.h-----多媒体的应用; 多媒体Dlg.h------对话框; resourse.h-----为多媒体.rc服务! 2)源文件(完成各种类的定义与实现): Activemovie3.cpp-------控件; stdafx.cpp-----框架构成; 多媒体.cpp----多媒体的应用; 多媒体Dlg.cpp------对话框; 多媒体.rc-----运行过的效果!
称
称
任务描述
负责 协助人 人
1234 全部 编写软件
孟凡 孟凡林 林
2需求分析
2.1概述
1)到网上或图书馆查找相关系统函数实现相应的功能; 2)使用MFC构建相应的用户界面
2.2用户分析
1)要求有稳定的性能,可实现要求的功能; 2)拥有较好的界面,很方便人操作!
2.3 约束条件
(作为开发人员的,通常你的小组的工作时间和人员是一个明显约束; 另外站在用户的角度,他们对你有什么约束要求,请从这两个角度进行 陈述。)
1 工作计划
1.1主要工Βιβλιοθήκη 阶段划分12月20 —21
12月22 —23
12月24 日
12月26
搜索相关资料,学习基础知识,大致设计 框架 考虑所用到的数据结构,函数及其作用, 做较为细致的分析 设计开始,仔细设计!
写报告
(用表格或图表的形式列出你们小组各个阶段的时间进度大致安排)
1.2工作任务分工
阶段名 任务名
} 7.减小声音 void CMyDlg::OnLowerButton() {
// TODO: Add your control notification handler code here long Volume=m_ActiveMovie.GetVolume(); m_ActiveMovie.Pause(); m_ActiveMovie.SetVolume(Volume-100); m_ActiveMovie.Run();
} 3)暂停播放 void CMyDlg::OnPauseButton() {
// TODO: Add your control notification handler code here m_ActiveMovie.Pause();
} 4.停止播放 void CMyDlg::OnStopButton() {
} delete [] buf; //释放空间
} 2)播放文件 void CMyDlg::OnPlayButton() {
// TODO: Add your control notification handler code here
m_ActiveMovie.Run();//播放文件 SetTimer(0,20,NULL);//设置定时器
SetDlgItemText(IDC_STATIC2,"Status:Repeat"); } else{ isRepeat=FALSE; SetDlgItemText(IDC_STATIC2,"Status:Normal"); } } 6.增大声音 void CMyDlg::OnUpperButton() { // TODO: Add your control notification handler code here long Volume=m_ActiveMovie.GetVolume(); m_ActiveMovie.Pause(); m_ActiveMovie.SetVolume(Volume+100); m_ActiveMovie.Run();
2.4功能需求
能够打开文件放进播放列表,点击播放键使其播放,暂停键暂停,停止 键停止,重播键重新播放,全屏键全屏播放,退出键退出程序,增大键 增大音量,减小键减小音量!
2.5用户界面需求
3设计与实现
3.1概述
使用MFC构建相应的用户界面,实现相应的功能----------能够打开文件 放进播放列表,点击播放键使其播放,暂停键暂停,停止键停止,重播 键重新播放,全屏键全屏播放,退出键退出程序,增大键增大音量,减 小键减小音量,然后向其中加入各个函数实现相应的功能!
} 9.关闭窗口 void CMyDlg::OnCloseButton() {
// TODO: Add your control notification handler code here m_ActiveMovie.CloseWindow();²
} 10.退出 void CMyDlg::OnClickedExitButton() {
3.2详细设计
3.1.1类的抽象及设计