由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有很多联系建议大家碰到难于解决的问题的时候试一下以前的处理方式一般都能奏效