VB.net 2010 視頻教程 VB.net 2010 視頻教程 VB.net 2010 視頻教程
SQL Server 2008 視頻教程 c#入門經典教程 Visual Basic從門到精通視頻教程
當前位置:
魔兽世界wow > 編程開發 > VBnet >
  • vb.net教程之VB.NET中聲音的播放

  • 2017-06-06 23:21 來源:未知
由VB6升級為.NET后,有些人不清楚聲音的處理,比如程序出錯的時候,自定義一個聲音播放,或者程序的背景音樂、包括游戲音樂等等。下面介紹幾種在VB.NET中計較簡單可以實現的方案:



1.  Beep

最簡單的一種方法,通過計算機的揚聲器發出聲響, 聲響的音高與持續時間取決于硬件和系統軟件,從而隨計算機不同而不同。

Beepg跟Msgbox等方法位于Microsoft.VisualBasic.Interaction 中,一般默認系統會自動加載。調用很簡單,看下面的例子。

Dim I As Integer

For I = 1 To 100   ' Loop 100 times.

     Beep()      '  Sound a tone.

Next I



2. 用Win32 API PlaySound

PlaySound位于"winmm.dll"中,可以根據輸入參數的不同,播放WAV類型的音樂。在VB.NET中調用跟VB6中差不多:

先聲明:

Private Declare Auto Function PlaySound Lib "winmm.dll" (ByVal lpszSoundName As String, ByVal hModule As Integer, ByVal dwFlags As Integer) As Integer



Const SND_FILENAME As Integer = &H20000

Const SND_ALIAS As Integer = &H10000

Const SND_SYNC As Integer = &H0

具體還有很多常量,不一一列舉,下面是播放一個wav文件的例子

Dim mstrfileName As String = "c:\eagle2.wav"

PlaySound(mstrfileName, 0, SND_FILENAME)



注意上面的播放是非同步的,就是說它并不會播放完畢才結束。如果把上面的代碼寫在一個Button.Click的事件處理程序中,第二次點擊的時候它會打斷第一次的播放,重新開始。



當然我們也可以調用系統的聲音:

PlaySound("SystemStart", 0, SND_ALIAS Or SND_SYNC)

' 以同步的方式調用系統啟動時候的聲音。



3.  調用媒體播放器控件



VB.NET中并沒有提供媒體播放器的.NET組件,沒辦法我們還是調用以前Com組件Windows Media Player。當然除了聲音外,還可以播放視頻文件。

首先把媒體播放器控件加到工具欄中,調用還是簡單的寫一下吧:)



Private Sub playMediaFile(ByVal mediaFileName As String)

  With MediaPlayer1

   .Stop()

   .FileName = "c:\mp3\愛不愛我.mp3"

   .Play()

  End With

End Sub



總結:雖然VB.NET比VB6改變了很多,包括真正的OOP,多線程等等,但是總歸還是跟VB有很多聯系,建議大家碰到難于解決的問題的時候,試一下以前的處理方式,一般都能奏效

本欄文章均來自于互聯網,版權歸原作者和各發布網站所有,本站收集這些文章僅供學習參考之用。任何人都不能將這些文章用于商業或者其他目的。

相關教程