实验8题1与题2的具体步骤

实验8题1与题2的具体步骤

ID:41654408

大小:64.53 KB

页数:8页

时间:2019-08-29

实验8题1与题2的具体步骤_第1页
实验8题1与题2的具体步骤_第2页
实验8题1与题2的具体步骤_第3页
实验8题1与题2的具体步骤_第4页
实验8题1与题2的具体步骤_第5页
资源描述:

《实验8题1与题2的具体步骤》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、1、编写代码实现制作一个音频文件播放器(1)创建一个基于对话框的工程,工程名为exl23o在第二步的pleaseenteratitleforyourdialog项中输入对话框标题:"MyWAVPlayer"。(2)为工程添加多媒体组件。选择菜单:工程一>添加到工程一ComponentsandControls菜单项,在弹出的ComponentsandControlsGallery对话框中双击VisualC++Components文件夹,然后选择WindowsMultimedialibrary项,按Insert按钮:在弹出的对话框中按“确定

2、”按钮,在继续弹出的一个消息框屮按“是”按钮,则多媒体组件被加入到当前工程中。选择ComponentsandControlsGallery对话框中的关闭按钮,关闭该对话框。(3)定制对话框。将IDD_EX123_DIALOG对话框(MyWAVPlayer)中的静态文本控件以及“取消”按钮控件删除。将“确定”按钮的标题改为“关机”。新添3个按钮控件,其ID和标题分别设置如下。按钮ID值Caption播放按钮IDCBUTTONPLAY播放停止按钮IDCBUTTONSTOP停止打开按钮IDCBUTTONOPEN打开(4)为对话框类添加3个成员

3、变量,并在构造函数中对它们进行初始化。3个成员变量分别用来表示当前状态为播放、暂停状态和设备ID,如下:变量类型变量名访问类型BOOLmbIsPlayingprotectedBOOLmbIsPauseprotectedMCIDEVICEIDmMCIDeviceIDprotected构造函数屮的初始化代码:CEx123Dlg::CEx123Dlg(CWnd*pParent/*二NULL*/):CDialog(CExl23Dlg::IDD,pParent)m_hlcon=AfxGetApp()->LoadIcon(IDR_MAINFRAME

4、);m_bIsPause=FALSE;m_bIsPlaying=FALSE;m_MCIDeviceID=O;}(1)为CExl23Dlg对话框类添加3个成员函数:1)利用类向导添加WM_DESTROY消息的处理函数,代码如下:voidCExl23Dlg::OnDestroy(){CDialog::OnDestroy();〃退出程序前先停止声音播放,再关闭设备//这里忽略了错误处理mciSendCommand(m_MClDeviceID,MCI_STOP,MCl_WAIT,NULL);mciSendCommand(m_MCIDeviceI

5、D,MCI_CLOSE,MCI_WAIT,NULL);}2)添加一个处理MCI错误的函数。在ClassView页面中,右键单击CExl23Dlg类,选择AddMemberFunction;添加成员函数类型为viod,函数描述为:ShowMCIError(DWORDdwError);访问方式为:privateo函数代码内容为:voidCEx123Dlg::ShowMCIError(DWORDdwError){charszErrorBuf[MAXERRORLENGTH];MessageBeep(MB」CONEXCLAMATION);if(m

6、ciGetErrorString(dwError,(LPSTR)szErrorBuf,MAXERRORLENGTH))MessageBoxCszErrorBuf/'MCI错误n,MB_lCONEXCLAMATION);elseMessageBox(H未知错误J'V'MCI错误”,MB_ICONEXCLAMATION);13)添加MM_MCINOTIFY消息的消息映射和处理函数。由于类向导不支持该消息,必须手工进行添加,添加时不耍忘记包括三项内容:函数原型、消息映射入口项和函数体。在exl23Dlg.h文件中添加消息函数原型的声明:cla

7、ssCExl23Dlg:publicCDialog{〃省略部分代码virtualBOOLOnlnitDialogO;afx_msgvoidOnSysCommand(UINTnID,LPARAM1Param);afx_msgvoidOnPaint();afx_msgHCURSOROnQueryDragIcon();afx_msgvoidOnDestroyO;afx_msgLRESULTOnMciNotify(WPARAMwParam,LPARAM1Param);afx_msgvoidOnButtonOpen();afx_msgvoidOn

8、ButtonPlayO;afx_msgvoidOnButtonStop();〃}}AFX_MSGDECLARE_MESSAGE_MAP()private:voidShowMClError(DWORDdwEr

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

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

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