实训论文(设计)-用VC++进行MFC多媒体播放器.doc_第1页
实训论文(设计)-用VC++进行MFC多媒体播放器.doc_第2页
实训论文(设计)-用VC++进行MFC多媒体播放器.doc_第3页
实训论文(设计)-用VC++进行MFC多媒体播放器.doc_第4页
实训论文(设计)-用VC++进行MFC多媒体播放器.doc_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

PINGDINGSHAN UNIVERSITY实训论文(设计) 题 目: FMC播放器院(系): 软件学院专业年级: 13级软工1班姓 名: 周天祥学 号: 131530102指导教师: 徐向艺2014年12 月12 日用VC+进行MFC多媒体播放器摘要:基于MFC应用程序的数据类型转换软件,个人觉得这个小程序很实用,可以实现人们对视听的享受,程序主要是根据编码进行统计,这在以后的程序开发中经常要用到。对于我们日常的生活学习有很大的作用。随着人们对视听效果的不断提高,多媒体技术已经成为计算机领域发展的重要部分。而且,随着编程平台的不断发展,开发多媒体程序不再是一件繁琐、艰难的工作了,无需具备太多的专业知识就可以编写多媒体程序。本案例就介绍用VC6.0自带的一个ActiveX控件-Windows MediaPlayer,来建立自己的多媒体播放器。本案例将利用VisualC+6.0设计一个可以播放*.mp3,*.flv, *.avi,等文件的媒体播放器。关键词:程序设计;多媒体播放器软件;MFC;按钮控件目录一、开发工具及其相关理论41.1设计目的41.2设计要点41.3开发工具的介绍41.4项目设计的意义5二、基于MFC播放器系统实现62.1多媒体播放器功能图62.2设计多媒体播放器的界面62.3 播放器代码72.3.1打开列表72.3.2添加文件82.3.3保存列表82.3.4播放文件82.3.5删除文件92.3.6删除列表92.3.7退出程序92.3.8 OnInitDialog()函数9三心得与总结11四、参考文献124.1 c+程序设计124.2 百度文库12一、开发工具及其相关理论1.1设计目的为学生提供了一个既动手又动脑,独立实践的机会,将课本上的理论知识和实际有机的结合起来,锻炼学生的分析解决实际问题的能力。提高学生适应实际,实践编程的能力。程序设计实践主要是培养学生利用系统综合C+语言进行程序设计的能力。1. 进一步巩固和复习C+程序设本程序设计实践是采用C+语言,在VC平台下设计。本课程设计的基础知识。2. 培养学生结构化程序、模块化程序设计的方法和能力。3. 了解软件的编制过程及各环节的具体内容。4. 提高学生程序调试技巧、软件设计能力和代码规范化等素质。5. 提高学生分析问题、解决问题以及实际运用能力。1.2设计要点1、 基本要求:设计的系统界面要美观大方,操作合理,有必要的提示。2、创新要求:在基本要求达到后,进行创新设计。3、对系统进行功能模块分析、控制流程分析正确。4、系统设计要实用,编程简练,可用,功能全面,并有一定的容错能力。5、说明书、流程图要清楚6、要求程序设计合理,用户界面良好,如采用菜单工作方式。1.3开发工具的介绍VisualC+6.0是Microsoft公司在1998年推出的基于Windows9X和WindowsNT的优秀集成开发环境。该环境为用户提供了良好的可视化编程环境,程序员可以里利用该开发环境轻松地访问C+源代码编辑器,资源编辑器和使用内部调试器,并且可以创建项目文件。VisualC+6.0不仅包括编译器,而且它还包括许多有用组件,通过这些组件的协同工作,可以在VisualC+6.0集成环境中轻松地完成创建源文件,编辑资源,以及对程序的编译,连接和调试等各项工作。MFC(Microsoft Foundation Class)是用来编写Windows应用程序的C+类集,其中封装了大部分WindowsAPI函数和Windows控件,使用MFC类库和Visual C+提供的高度可视的应用程序开发工具,可使应用程序开发变得简单,提高代码的可靠性和可重用性。随着多媒体性能的极大提升,程序中经常要播放一段视频或者一段音频,如果能够简单地插入音频和视频,将极大缩短程序的开发时间。本文基于MFC在Visual C+环境下利用Windows Media Player控件实现了音频视频文件的播放。1.4项目设计的意义基于MFC编程的记事本能够以C+独特的面向对象编程的思想,实现良好的人际交互,凭借类的复用性等其他特性。对于编程者来说,大大的减轻了源代码书写;对于用户来说,能够较大程度的提高用户的体验。因此,基于MFC编写的记事本能够实现编程者与用户间的双赢。二、基于MFC播放器系统实现1. 制作一个具有自己设计风格的媒体播放器。2. 要求能随机选取要播放的文件,实现打开列表、添加文件、保存列表、播放文件、删除文件、删除列表、退出程序等基本功能。3. 要求能播放多种格式的音频视频格式文件。4. 界面良好,功能完善2.1多媒体播放器功能图多媒体播放器打开列表添加文件保存列表播放文件删除文件删除列表退出程序暂停播放停止播放音量大小2.2设计多媒体播放器的界面图2-2-1图2-2-22.3 播放器代码void CMyDlg:Onopen() flag = !flag;if(!flag)SetWindowPos(NULL,0,0,465,420,SWP_NOMOVE);elseSetWindowPos(NULL,0,0,720,420,SWP_NOMOVE);2.3.1打开列表void CMyDlg:Onopen() flag = !flag;if(!flag)SetWindowPos(NULL,0,0,465,420,SWP_NOMOVE);elseSetWindowPos(NULL,0,0,720,420,SWP_NOMOVE);2.3.2添加文件char szFileFilter=媒体文件(*.avi,*.mp3,*.wma)|*.avi;*.mp3;*.wma|;CFileDialog dlg(true,NULL,NULL,OFN_HIDEREADONLY|OFN_NOCHANGEDIR|OFN_ALLOWMULTISELECT,szFileFilter);POSITION pos=dlg.GetStartPosition();if(dlg.DoModal()=IDOK) while(pos!=NULL) CString m_filepath=dlg.GetNextPathName(pos);m_list.AddString(m_filepath);/其中OFN_ALLOWNMULTISELECT是允许选择多个文件,OFN_NOCHANGEDIR是不改变当前目录(这一点很重要,特别是在涉及相对路径的存储时)2.3.3保存列表void CMyDlg:Onsave() CStdioFile file;file.Open(.data.txt,CFile:modeCreate|CFile:modeReadWrite|CFile:typeText);for(int i=0;im_list.GetCount();i+)CString s;m_list.GetText(i,s);s+=n;file.WriteString(s);file.Close();2.3.4播放文件void CMyDlg:Onplay() CString str;int index = m_list.GetCurSel();/获取所选行数m_list.GetText(index,str);m_play.SetUrl(str);2.3.5删除文件void CMyDlg:Delete() CStdioFile file;m_list.ResetContent();file.Open(.data.txt,CFile:modeCreate);2.3.6删除列表void CMyDlg:OndeleteF() m_list.DeleteString(m_list.GetCurSel();/删除当前光标所选的行Onsave();/自动保存删除某一行后的播放列表2.3.7退出程序void CMyDlg:Onexit() CDialog:OnCancel();2.3.8OnInitDialog()函数BOOL CMyDlg:OnInitDialog()CDialog:OnInitDialog();/ Add About. menu item to system menu./ IDM_ABOUTBOX must be in the system command range.ASSERT(IDM_ABOUTBOX & 0xFFF0) = IDM_ABOUTBOX);ASSERT(IDM_ABOUTBOX AppendMenu(MF_SEPARATOR);pSysMenu-AppendMenu(MF_STRING, IDM_ABOUTBOX, strAboutMenu);/ Set the icon for this dialog. The framework does this automatically/ when the applications main window is not a dialogSetIcon(m_hIcon, TRUE);/ Set big iconSetIcon(m_hIcon, FALSE);/ Set small iconSetWindowPos(NULL,0,0,465,420,SWP_NOMOVE);m_list.SetHorizontalExtent(1000);CStdioFile *fsp=new CStdioFile(.data.txt,CFile:modeRead);CString strtemp;while(fsp-ReadString(strtemp)m_list.AddString(strtemp);fsp-Close();delete fsp;/ TODO: Add extra initialization herereturn TRUE; / return TRUE unless you set the focus to a control三心得与总结通过这次的多媒体播放器的设计,让我们切身的感受到了计算机技术在多媒体中的应用是多么的广泛和实际。同时,这也是理论知识的又一次实践,在这次的设计中利用VC+6.0编写出一个多媒体播放器,在这个过程中让我很有成就感,虽然很多都是在老师的提示下完成的,但是,当一个成品有自己编写出来的时候,那种成就感是可想而知的。在工作和生活中多媒体技术和我们息息相关,在计算机技术不断普及的今天,掌握多媒体技术对我们而言是相当重要的,这也是我们未来学习的重点,通过这次的学习也让我们学会了自学软件的技巧,对于今后的学习也是很有帮助的。这次课程设计是一个理论与实践结合的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论