VC2008 Windows Media Player控件的使用技巧(三)
来源:互联网 发布:破解版的软件 编辑:程序博客网 时间:2024/06/12 19:00
操作系统:Windows 7
软件环境:Visual C++ 2008 SP1
本次目的:在VC2008下Windows Media Player控件的用法之进阶篇
在对话框头文件中,添加播放器的一些头文件和声明对象。
[cpp] view plaincopyprint?
- //
TestDlg.h : 头文件 - //
- #pragma
once - #include
"afxwin.h" - #include
"CWMPPlayer4.h" //播放头文件 - #include
"CWMPControls.h" //控制头文件 - #include
"CWMPSettings.h" //设置头文件 - #include
"CWMPMedia.h" //媒体头文件 - #include
"afxcmn.h" - //
CTestDlg 对话框 - class
CTestDlg public: CDialog - {
- //
······在这里省略 - public:
-
CWMPPlayer4 m_Player; -
CWMPControls m_control; -
CWMPSettings m_setting; -
CWMPMedia m_media; -
CProgressCtrl m_progress; - };
对窗体添加事件,添加一个OnTimer()事件。对Media Player添加播放改变PlayStateChange()事件。具体代码如下:
[cpp] view plaincopyprint?
- //
TestDlg.cpp : 实现文件 - BOOL
CTestDlg::OnInitDialog() - {
-
-
m_control= -
m_setting=m_Player.get_settings(); -
TRUE; //除非将焦点设置到控件,否则返回 TRUE - }
- void
CTestDlg::OnBnClickedButton1() - {
-
m_control.play(); - }
- void
CTestDlg::OnBnClickedButton6() - {
-
CString fileName; -
CFileDialog fileDialog( TRUE,NULL,NULL,OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,_T( -
(fileDialog.DoModal() == IDOK) -
{ -
fileName=fileDialog.GetPathName(); -
m_Player.put_URL(fileName); -
} -
m_media= -
m_progress.SetRange(0,( -
m_progress.SetPos(0); - }
- void
CTestDlg::OnBnClickedButton2() - {
-
m_control.pause(); - }
- void
CTestDlg::OnBnClickedButton3() - {
-
m_control.stop(); - }
- void
CTestDlg::OnBnClickedButton4() - {
-
m_control.fastForward(); - }
- void
CTestDlg::OnBnClickedButton5() - {
-
m_control.fastReverse(); - }
- void
CTestDlg::OnBnClickedButton7() - {
-
m_Player.put_fullScreen(1); - }
- void
CTestDlg::OnBnClickedButton8() - {
-
m_setting.put_volume(m_setting.get_volume()-10); - }
- void
CTestDlg::OnBnClickedButton9() - {
-
m_setting.put_volume(m_setting.get_volume()+10); - }
- void
CTestDlg::PlayStateChangeOcx1( longNewState) - {
-
(NewState==3) //播放状态时,开启定时器 -
SetTimer(1,1000,NULL); -
if (NewState==1) //停止时,关闭定时器, 进度条回0 -
{ -
m_progress.SetPos(0); -
KillTimer(1); -
} -
-
KillTimer(1); - }
- void
CTestDlg::OnTimer( UINT_PTRnIDEvent) - {
-
TODO: 在此添加消息处理程序代码和/或调用默认值 -
(nIDEvent != 1) -
-
m_progress.SetPos(m_progress.GetPos()+1); -
CDialog::OnTimer(nIDEvent); - }
效果如下:
Media player控件常用属性
属性/方法名:说明: 0 0
- VC2008 Windows Media Player控件的使用技巧(三)
- VC2008 Windows Media Player控件的使用技巧(三)
- VC2008 Windows Media Player控件的使用技巧(三)
- VC2008 Windows Media Player控件的使用技巧(三)
- VC2008 Windows Media Player控件的使用技巧(三)
- VC2008 Windows Media Player控件的使用技巧(三)
- VC2008 Windows Media Player控件的使用技巧(三)
- VC2008 Windows Media Player控件的使用技巧
- VC2008 Windows Media Player控件的使用技巧(二)
- VC2008 Windows Media Player控件的使用技巧
- VC2008 Windows Media Player控件的使用技巧(二)
- VC2008 Windows Media Player控件的使用技巧
- VC2008 Windows Media Player控件的使用技巧
- VC2008 Windows Media Player控件的使用技巧(二)
- VC2008 Windows Media Player控件的使用技巧(二)
- VC2008 Windows Media Player控件的使用技巧
- VC2008 Windows Media Player控件的使用技巧
- VC2008 Windows Media Player控件的使用技巧(二)
- js的url传值中文乱码问题
- iOS中app启动闪退的原因
- Unity游戏开发—休闲类(有源代码)
- javascript格式化json显示
- solr的一些查询参数
- VC2008 Windows Media Player控件的使用技巧(三)
- Android_Studio的学习1--下载和安装
- Samza的Task是如何运行在Yarn上的
- 关于安卓开发选择android 4.2.2(API 17)应用无法打开的解决办法
- 【Android】别话 AsyncTask
- ubuntu14.04为idea14 webstorm 增加启动栏快捷图标
- POJ3740精确覆盖(dfs +状压+位运算)
- php的面向对象
- linux磁盘分区