利用MCI在VC++下设计一个播放器

利用MCI在VC++下设计一个播放器

ID:44814162

大小:45.01 KB

页数:4页

时间:2019-10-29

利用MCI在VC++下设计一个播放器_第1页
利用MCI在VC++下设计一个播放器_第2页
利用MCI在VC++下设计一个播放器_第3页
利用MCI在VC++下设计一个播放器_第4页
资源描述:

《利用MCI在VC++下设计一个播放器》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、计算机与信息技术学院设计性实验报告专业:年级/班级:2010—2011学年第二学期课程名称多媒体技术指导教师本组成员学号姓名实验地点实验时间项目名称利用MCI在VC++环境下设计一个播放器实验类型设计性一、实验目的:熟悉MCI,并能利用MCI编程在visualc++环境设计出一个音乐播放器,掌握使用高级语言进行多媒体编程的功能。二、实验仪器或设备:一台安装有visualc++的计算机。三、总体设计(设计原理、设计方案及流程等):①在visualc++环境下设计出一个音乐播放器的界面:具有打开、播放,前进、后退、暂停或继续、停止的功能;②修改各个控件的属性,并为其添加代码;③对该音乐

2、播放器编译--运行。四、实验步骤(包括主要步骤、代码分析等)(一):创建MFC应用程序:打开visualc++软件,选择“文件”—“新建”新建一个应用程序文档MFCAppWizard[exe],将工程命名为player。(二)编辑对话框:在工作区内,设计出一个音乐播放器的界面,添加按钮控件:打开、播放,前进、后退、暂停或继续、停止,后再添加一个滑动条控件。(三)为各个控件依次添加以下对应的代码:voidCMusicplayerDlg::OnBUTTONOpen(){CFileDialogfile(TRUE,"","",OFN_HIDEREADONLY

3、OFN_OVERWRITEPR

4、OMPT

5、OFN_FILEMUSTEXIST,"WaveAudio(*.wav)

6、*.wav

7、MIDI(*.mid)

8、*.mid

9、mp3(*.mp3)

10、*.mp3

11、所有文件(*.*)

12、*.*

13、");if(file.DoModal()==IDOK){strFileName=file.GetPathName();strFileExt=file.GetFileExt();}}voidCMusicplayerDlg::OnBUTTONPlay(){bPause=TRUE;//初始化SetTimer(1,33,NULL);//为滑动条启动定时器,频繁发送定时消息mciSendCommand(

14、m_wDeviceID,MCI_CLOSE,NULL,NULL);//保证总是重新播放//打开设备MCI_OPEN_PARMSmciOpen;mciOpen.lpstrElementName=strFileName.GetBuffer(strFileName.GetLength());mciSendCommand(NULL,MCI_OPEN,MCI_OPEN_ELEMENT,(DWORD)&mciOpen);//发送打开相关设备的命令//检测播放总长度m_wDeviceID=mciOpen.wDeviceID;//得到打开的设备的IDMCI_STATUS_PARMSmciStatu

15、sParms;mciStatusParms.dwItem=MCI_STATUS_LENGTH;mciSendCommand(m_wDeviceID,MCI_STATUS,MCI_WAIT

16、MCI_STATUS_ITEM,(DWORD)&mciStatusParms);//发送状态命令m_lLength=mciStatusParms.dwReturn;//播放设备MCI_PLAY_PARMSmciPlay;mciSendCommand(m_wDeviceID,MCI_PLAY,NULL,(DWORD)&mciPlay);//滑动还原到最左端m_pSlider->SetRange(0,

17、m_lLength);//设置滑动条范围m_pSlider->SetPos(0);//播放时滑动条总是在最左端}voidCMusicplayerDlg::OnBUTTONPrevious(){bPause=TRUE;//记录当前位置MCI_STATUS_PARMSmciStatusParms;mciStatusParms.dwItem=MCI_STATUS_POSITION;mciSendCommand(m_wDeviceID,MCI_STATUS,MCI_STATUS_ITEM,(DWORD)&mciStatusParms);dCurrentPosition=mciStatusP

18、arms.dwReturn;//取得当前位置的信息MCI_PLAY_PARMSmciPlayParms;if(dCurrentPosition<=(m_lLength/16))//当前位置不足一个后退步{//发送后退到文件开始点的命令mciSendCommand(m_wDeviceID,MCI_SEEK,MCI_SEEK_TO_START,NULL);mciSendCommand(m_wDeviceID,MCI_PLAY,NULL,(DWORD)&mciPlayPar

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。