MFC 单文档文件的对话框中如何利用ActiveX控件通过Windows Media Play,在双击时播放一段固定的视频
时间: 2024-03-01 13:55:11 浏览: 95
要在 MFC 单文档文件的对话框中利用 ActiveX 控件通过 Windows Media Play 播放一段固定的视频,可以按照以下步骤进行:
1. 在对话框资源中添加一个 ActiveX 控件,选择 Windows Media Player,命名为 m_wmpPlayer。
2. 在对话框类的头文件中添加 #import "wmp.tlb",并声明一个 CComPtr<IWMPPlayer> 类型的变量 m_pPlayer。
3. 在 OnInitDialog() 函数中初始化 m_pPlayer 变量,绑定到 m_wmpPlayer 控件,并设置播放器的 URL 为视频文件路径:
```c++
BOOL CMyDialog::OnInitDialog()
{
CDialogEx::OnInitDialog();
// 初始化 m_pPlayer
HRESULT hr = m_wmpPlayer.GetControlUnknown()->QueryInterface(IID_IWMPPlayer, (void**)&m_pPlayer);
if (FAILED(hr))
{
// 错误处理
return TRUE;
}
// 设置 URL
CString strVideoPath = _T("C:\\video.avi");
m_pPlayer->put_URL(strVideoPath.AllocSysString());
return TRUE;
}
```
4. 在双击控件的消息响应函数中,调用播放器的 Play() 方法:
```c++
void CMyDialog::OnDblClickWmpplayer()
{
if (m_pPlayer)
{
m_pPlayer->controls->play();
}
}
```
这样,当用户双击 Windows Media Player 控件时,就会自动播放视频。
阅读全文