由VB
升級為
NET後
有些人不清楚聲音的處理
比如程序出錯的時候
自定義一個聲音播放
或者程序的背景音樂
包括游戲音樂等等
下面介紹幾種在VB
NET中計較簡單可以實現的方案
. Beep
最簡單的一種方法通過計算機的揚聲器發出聲響 聲響的音高與持續時間取決於硬件和系統軟件從而隨計算機不同而不同
Beepg跟Msgbox等方法位於MicrosoftVisualBasicInteraction 中一般默認系統會自動加載調用很簡單看下面的例子
Dim I As Integer
For I = To Loop times
Beep() Sound a tone
Next I
. 用Win API PlaySound
PlaySound位於winmmdll中可以根據輸入參數的不同播放WAV類型的音樂在VBNET中調用跟VB中差不多
先聲明
Private Declare Auto Function PlaySound Lib winmmdll (ByVal lpszSoundName As String ByVal hModule As Integer ByVal dwFlags As Integer) As Integer
Const SND_FILENAME As Integer = &H
Const SND_ALIAS As Integer = &H
Const SND_SYNC As Integer = &H
具體還有很多常量不一一列舉下面是播放一個wav文件的例子
Dim mstrfileName As String = c:\eaglewav
PlaySound(mstrfileName SND_FILENAME)
注意上面的播放是非同步的就是說它並不會播放完畢才結束如果把上面的代碼寫在一個ButtonClick的事件處理程序中第二次點擊的時候它會打斷第一次的播放重新開始
當然我們也可以調用系統的聲音
PlaySound(SystemStart SND_ALIAS Or SND_SYNC)
以同步的方式調用系統啟動時候的聲音
. 調用媒體播放器控件
VBNET中並沒有提供媒體播放器的NET組件沒辦法我們還是調用以前Com組件Windows Media Player當然除了聲音外還可以播放視頻文件
首先把媒體播放器控件加到工具欄中調用還是簡單的寫一下吧)
Private Sub playMediaFile(ByVal mediaFileName As String)
With MediaPlayer
Stop()
FileName = c:\mp\愛不愛我mp
Play()
End With
End Sub
總結雖然VBNET比VB改變了很多包括真正的OOP多線程等等但是總歸還是跟VB有很多聯系建議大家碰到難於解決的問題的時候試一下以前的處理方式一般都能奏效
From:http://tw.wingwit.com/Article/program/net/201311/15681.html