您好,登錄后才能下訂單哦!
這篇文章主要介紹“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進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。