VC:利用多媒体控件实现多媒体的应用

注意:.cpp文件中包含3个头文件:#include “wmpplayer4.h”、#include“wmpcontrols.h”和#include“wmpsettings.h”

1、创建一个基于对话框的应用程序。

2、选择Project|Add To project|Components and Controls 命令,在弹出的对话框中选择windows Media Player控件。

3、利用鼠标拖动该控件,然后利用类向导给该控件添加变量:CWMPPlayer4 m_myplayer;

4、在对话框上添加3个按钮控件,打开、播放、暂停。

5、C*Dlg类中添加变量:CString filename。添加打开文件的消息映射和函数代码:

void CTestDlg::OnOpen()

{

       // TODO: Add your control notification handler code here

       CFileDialog FileDlg(TRUE,NULL,NULL,OFN_HIDEREADONLY|OFN_ALLOWMULTISELECT|OFN_NOCHANGEDIR,

       "Video File(*.avi;*.asf;*.wmv;*.rm;*.rmvb)|*.avi;*.asf;*.wmv;*.rm;*.rmvb|Music Files(*.mp3;*.wav;*.cda)|*.mp3;*.wav;*.cda|Mpegvideo File(*.dat;*.mpg;*.mpeg)|*.dat;*.mpg;*.mpeg;*.mpe|");

       if(FileDlg.DoModal()==IDOK)

       {

       filename=FileDlg.GetPathName();

       GetDlgItem(IDC_START)->EnableWindow(true);

       }

}

6、添加播放、暂停的消息映射和函数代码:

void CTestDlg::OnStart()

{

       // TODO: Add your control notification handler code here

       //     m_myplayer.GetSettings().SetAutoStart(TRUE);

       GetDlgItem(IDC_PAUSE)->EnableWindow(true);

       m_myplayer.SetUrl(filename);

}

void CTestDlg::OnPause()

{

       // TODO: Add your control notification handler code here

       CWMPPlayer4       *m_p=&m_myplayer;

       if(pauseflag!=true)

       {

              pauseflag=true;

              m_p->GetControls().pause();

              SetDlgItemText(IDC_PAUSE,"继续");

       }

       else

       {

              pauseflag=false;

              m_p->GetControls().play();

              SetDlgItemText(IDC_PAUSE,"暂停");

       }

}

原文地址:https://www.cnblogs.com/shenchao/p/2970021.html