这篇文章主要介绍“VS2003控件有什么作用”,在日常操作中,相信很多人在VS2003控件有什么作用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”VS2003控件有什么作用”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
最近在做一个有关VS2003控件和windows media player 控件的东西,刚开始做的时候,在网上找了很久都没找到相关的中文文档。没办法,只好自己硬着头皮慢慢查看MSDN上的有关内容。由于VS2003控件与VC6有一定的区别,这也是我在查找资料和使用控件时遇到的具到困难。
Windows media player作为MS的官方组件,MSDN上有着比较详细的英文说明,但是该说明却并不是那么让人一目了然。该文就如何操作该组件的几个主要接口以及一些基本功能的实现给与详尽而明白的说明,为使该文尽量简单易懂,本文给出了用windows media player控件编写一个简单播放器的基本步骤。
首先,创建一个对话框,然后在资源管理器中右击对话框,选择“插入Active控件”—〉选择windows media player—〉将控件拉到适合大小—〉右击player控件—〉选择添加变量(m_avPlayer)。此时添加的变量在VS2003中不在时IWMPPlay4 了,而是COcx。
右击类视图/解决方案—〉添加类—〉选择“Active中的MFC类”—〉选择windows media player<1.0>à选择相应的接口(IWMPMedia IWMPSettings IWMPControls IWMPPlaylist等等)生成类。为图方便,我将所有接口都生成了相应的类。
为了说明方便,我在对话框中放了几个按钮,分别是:打开,播放,暂停,停止,添加。并在对话框右边添加了一个clistctrl又来显示播放列表。
然后在对话框头文件中添加了以下变量:
CWMPControls m_control; CWMPSettings m_set; CWMPPlaylist m_playlist; CWMPMedia m_media; COcx1 m_avPlayer; CListCtrl m_listCtrl;
一切准备工作就绪,下面就涉及到具体的编程问题了。
media player 的主要功能有:播放控制,屏幕显示,播放列表,播放列表集,播放信息显示。 ◆其中播放控制又有:打开,开始,暂停,停止,快速播放,倒退等等。打开:当选择一个文件打开是,为打开按钮添加消息响应函数,在VS2003控件函数中添加如下代码:char szFileFilter[]= "Mp3 File(*.mp3)|*.mp3|" "MPEG File(*.mpeg)|*.mpeg|" "Media File(*.asf)|*.asf|" "Video File(*.dat)|*.dat|" "MPGA File(*.mpga)|*.mpga|" "Wave File(*.wav)|*.wav|" "AVI File(*.avi)|*.avi|" "Movie File(*.mov)|*.mov|" "Mid File(*.mid;*,rmi)|*.mid;*.rmi|" "Wma File(*.wma)|*.wma|" "All File(*.*)|*.*||"; CFileDialog fileDialog( TRUE,NULL,NULL,NULL,szFileFilter,this); if (fileDialog.DoModal() == IDOK) { CStringfileName=fileDialog.GetPathName(); m_avPlayer.put_URL(fileName); } ◆下面来实现播放列表。为实现播放列表控制,首先在OnInitDialog()中添加代码://创建一个播放列表char szFileFilter[]= "Mp3 File(*.mp3)|*.mp3|" "MPEG File(*.mpeg)|*.mpeg|" "Media File(*.asf)|*.asf|" "Video File(*.dat)|*.dat|" "MPGA File(*.mpga)|*.mpga|" "Wave File(*.wav)|*.wav|" "AVI File(*.avi)|*.avi|" "Movie File(*.mov)|*.mov|" "Mid File(*.mid;*,rmi)|*.mid;*.rmi|" "Wma File(*.wma)|*.wma|" "All File(*.*)|*.*||"; CFileDialog fileDialog( TRUE,NULL,NULL,NULL,szFileFilter,this); if (fileDialog.DoModal() == IDOK) { CStringfileName=fileDialog.GetPathName(); //创建一个媒体 m_media = static_cast<CWMPMedia>(m_avPlayer.newMedia(fileName)); //将媒体添加到播放列表 m_playlist.appendItem(m_media); //将列表添加到当前列表,以便实现自动播放 m_avPlayer.put_currentPlaylist(m_playlist); m_set = (CWMPSettings)m_avPlayer.get_settings(); //参数true设置自动播放,false不设置自动播放 m_set.put_autoStart(true); //将媒体的名字添加到列表控件 m_listCtrl.InsertItem(0, m_media.get_name()); } ◆播放信息的显示可以通过CWMPMedia类获取相关的媒体信息。◆获取播放文件名:其他,如鼠标,接盘事件响应,可添加相应的消息响应函数要注意的是,在添加如鼠标一类的消息时,消息函数有个参数如nButton,它的值为1时是单击鼠标左键,2为单击鼠标右键消息,4为单击鼠标中键。等等。
到此,关于“VS2003控件有什么作用”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注亿速云网站,小编会继续努力为大家带来更多实用的文章!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。