AxWindowsMediaPlayer媒體文件主要方法屬性

轉自:http://www.cnblogs.com/Impulse/

AxWindowsMediaPlayer媒體文件主要方法屬性   

屬性/方法名: 說明: 
[基本屬性]   
URL:String; 指定媒體位置,本機或網絡地址 
uiMode:String; 播放器界面模式,可爲Full, Mini, None, Invisible 
playState:integer; 播放狀態,1=停止,2=暫停,3=播放,6=正在緩衝,9=正在連接,10=準備就緒 
enableContextMenu:Boolean; 啓用/禁用右鍵菜單 
fullScreen:boolean; 是否全屏顯示 
//播放器基本控制 
Ctlcontrols.play; 播放 
Ctlcontrols.pause; 暫停 
Ctlcontrols.stop; 停止 
Ctlcontrols.currentPosition:double; 當前進度 
Ctlcontrols.currentPositionString:string; 當前進度,字符串格式。如“00:23” 
Ctlcontrols.fastForward; 快進 
Ctlcontrols.fastReverse; 快退 
Ctlcontrols.next; 下一曲 
Ctlcontrols.previous; 上一曲 
[settings] wmp.settings //播放器基本設置 
settings.volume:integer; 音量,0-100 
settings.autoStart:Boolean; 是否自動播放 
settings.mute:Boolean; 是否靜音 
settings.playCount:integer; 播放次數 
[currentMedia] wmp.currentMedia //當前媒體屬性 
currentMedia.duration:double; 媒體總長度 
currentMedia.durationString:string; 媒體總長度,字符串格式。如“03:24” 
currentMedia.getItemInfo(const string); 獲取當前媒體信息"Title"=媒體標題,"Author"=藝術家,"Copyright"=版權信息,"Description"=媒體內容描述, "Duration"=持續時間(秒),"FileSize"=文件大小,"FileType"=文件類型,"sourceURL"=原始地址 
currentMedia.setItemInfo(const string); 通過屬性名設置媒體信息 
currentMedia.name:string; 同 currentMedia.getItemInfo("Title") 
[currentPlaylist] wmp.currentPlaylist //當前播放列表屬性 
currentPlaylist.count:integer; 當前播放列表所包含媒體數 
currentPlaylist.Item[integer]; 獲取或設置指定項目媒體信息,其子屬性同wmp.currentMedia 
axWindowsMediaPlayer1.currentMedia.sourceURL; //獲取正在播放的媒體文件的路徑
axWindowsMediaPlayer1.currentMedia.name;          //獲取正在播放的媒體文件的名稱
axWindowsMediaPlayer1.Ctlcontrols.Play          播放
  
axWindowsMediaPlayer1.Ctlcontrols.Stop          停止
  
axWindowsMediaPlayer1.Ctlcontrols.Pause          暫停
  
axWindowsMediaPlayer1.Ctlcontrols.PlayCount        文件播放次數
  
axWindowsMediaPlayer1.Ctlcontrols.AutoRewind       是否循環播放
  
axWindowsMediaPlayer1.Ctlcontrols.Balance         聲道
  
axWindowsMediaPlayer1.Ctlcontrols.Volume         音量
  
axWindowsMediaPlayer1.Ctlcontrols.Mute          靜音
  
axWindowsMediaPlayer1.Ctlcontrols.EnableContextMenu    是否允許在控件上點擊鼠標右鍵時彈出快捷菜單
  
axWindowsMediaPlayer1.Ctlcontrols.AnimationAtStart    是否在播放前先播放動畫
  
axWindowsMediaPlayer1.Ctlcontrols.ShowControls      是否顯示控件工具欄
  
axWindowsMediaPlayer1.Ctlcontrols.ShowAudioControls    是否顯示聲音控制按鈕
  
axWindowsMediaPlayer1.Ctlcontrols.ShowDisplay       是否顯示數據文件的相關信息
  
axWindowsMediaPlayer1.Ctlcontrols.ShowGotoBar       是否顯示Goto
  
axWindowsMediaPlayer1.Ctlcontrols.ShowPositionControls  是否顯示位置調節按鈕
  
axWindowsMediaPlayer1.Ctlcontrols.ShowStatusBar      是否顯示狀態欄
  
axWindowsMediaPlayer1.Ctlcontrols.ShowTracker       是否顯示進度條
  
axWindowsMediaPlayer1.Ctlcontrols.FastForward       快進
  
axWindowsMediaPlayer1.Ctlcontrols.FastReverse       快退
  
axWindowsMediaPlayer1.Ctlcontrols.Rate          快進/快退速率
  
axWindowsMediaPlayer1.AllowChangeDisplaySize 是否允許自由設置播放圖象大小
  
axWindowsMediaPlayer1.DisplaySize       設置播放圖象大小
  
    1-MpDefaultSize         原始大小
  
    2-MpHalfSize           原始大小的一半
  
    3-MpDoubleSize          原始大小的兩倍
  
    4-MpFullScreen          全屏
  
    5-MpOneSixteenthScreen      屏幕大小的
1/16  
    6-MpOneFourthScreen       屏幕大小的
1/4  
    7-MpOneHalfScreen        屏幕大小的
1/2  
axWindowsMediaPlayer1.ClickToPlay       是否允許單擊播放窗口啓動Media Player  

在視頻播放之後,可以通過如下方式讀取源視頻的寬度和高度,然後設置其還原爲原始的大小.
         private void ResizeOriginal()
         {
             int intWidth = axWindowsMediaPlayer1.currentMedia.imageSourceWidth;
             int intHeight = axWindowsMediaPlayer1.currentMedia.imageSourceHeight;
             axWindowsMediaPlayer1.Width = intWidth + 2;
             axWindowsMediaPlayer1.Height = intHeight + 2;
         }

打開媒體文件並播放:

         Dim filePath As String
         With Me.OpenFileDialog1
             .Title = "
打開語音文件"
             .CheckPathExists = True
             .CheckFileExists = True
             .Multiselect = False
             .Filter = "mp3文件(*.mp3)|*.mp3|所有文件(*.*)|*.*"
             If .ShowDialog = DialogResult.Cancel Then
                 Exit Sub
             End If
             filePath = .FileName
         End With
         Me.Text = "PC復讀機-文件 " & filePath
         AxWindowsMediaPlayer1.URL = filePath
         Try
             Me.AxWindowsMediaPlayer1.Ctlcontrols.play()
         Catch ex As Exception
             MsgBox("對不起,不能播放此格式語音文件", MsgBoxStyle.OKOnly, "PC復讀機")
             Exit Sub
         End Try

注意:

AxWindowsMediaPlayer1.URL 中URL是表示要播放的文件名,取消了原來的Name屬性.

AxWindowsMediaPlayer1.Ctlcontrols.play()播放,同樣還有Pause,Stop等其他屬性.

AxWindowsMediaPlayer1.settings.balance表示媒體播放的聲道設置,0表示均衡,-1和1表示左右聲道.

AxWindowsMediaPlayer1.currentMedia.duration 表示要播放的文件的時間長度.可用它獲取文件長度.

AxWindowsMediaPlayer1.Ctlcontrols.currentPosition表示正在播放的文件的當前播放位置,可用這個屬性來對媒體文件進行前進後退等設置.如

AxWindowsMediaPlayer1.Ctlcontrols.currentPosition+1 表示前進1個時間單位.

AxWindowsMediaPlayer1.settings.rate播放速率,一般乘以16後再顯示kbps單位.

注意:在上面程序中,如果在後面加上一個:

msgbox(AxWindowsMediaPlayer1.currentMedia.duration.ToString )

則顯示結果很可能爲0,因此,這時候很可能獲取不到文件的播放時間長度,容易出錯。所以在利用的時候可以加一個timer控件:

Private Sub Timer1_Tick(ByVal sender As Object, ByVal e As System.EventArgs) Handles Timer1.Tick
         EndPoint = AxWindowsMediaPlayer1.currentMedia.duration
         If EndPoint = 0 Then Exit Sub '
可能因爲媒體文件的打開需要一定時間,這裏等待媒體文件的打開

         msgbox(AxWindowsMediaPlayer1.currentMedia.duration.ToString )

End Sub

此時msgbox便會顯示文件播放長度。

2. Ctlcontrols屬性

Ctlcontrols屬性是AxWindowsMediaPlayer的一個重要屬性, 此控件中有許多常用成員。

(1) 方法play

用於播放多媒體文件,其格式爲:

窗體名.控件名.Ctlcontrols.play()

如: AxWindowsMediaPlayer1.Ctlcontrols.play()  ‘此處缺省窗體名是Me

(2) 方法pause

用於暫停正在播放的多媒體文件,其格式爲:

窗體名.控件名.Ctlcontrols.pause()

如: AxWindowsMediaPlayer1.Ctlcontrols.pause()

(3) 方法stop

用於停止正在播放的多媒體文件,其格式爲:

窗體名.控件名.Ctlcontrols.stop()

如: AxWindowsMediaPlayer1.Ctlcontrols.stop()

(4) 方法fastforward

用於將正在播放的多媒體文件快進,其格式爲:

窗體名.控件名.Ctlcontrols.fastforward()

如: AxWindowsMediaPlayer1.Ctlcontrols.forward()

(5) 方法fastreverse

窗體名.控件名.Ctlcontrols.fastreverse()

如: AxWindowsMediaPlayer1.Ctlcontrols.fastreverse()

6. 屬性CurrentPosition

用於獲取多媒體文件當前的播放進度,其值是數值類型,使用格式爲:

窗體名.控件名.Ctlcontrols.currentPosition

d1 =AxWindowsMediaPlayer1.Ctlcontrols.currentPosition

其中d1 是一個整型變量。

7. 屬性Duration

用於獲取當前多媒體文件的播放的總時間,其值爲數值類型,其使用格式爲:

窗體名.控件名.currentMedia.duration

如:d2 =AxWindowsMediaPlayer1.currentMedia.duration

其中d2是一個整型變量。

發佈了44 篇原創文章 · 獲贊 25 · 訪問量 19萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章