用VB5.0實現多首背景音樂的循環播放
發表于:2007-07-14來源:作者:點擊數:
標簽:
許多有關 VB 5編寫多媒體程序的文章解決了如何循環播放一首背景音樂的問題。但普遍存在兩大局限性,一是只能播放一首樂曲,二是要得到曲長,現改進如下: 1. 在E:\FODDER\SOUND目錄下準備五個WAV文件,文件名分別為:BK1.WAV--BK5.WAV。 2. 新建一個工程,在
許多有關
VB5編寫多媒體程序的文章解決了如何循環播放一首背景音樂的問題。但普遍存在兩大局限性,一是只能播放一首樂曲,二是要得到曲長,現改進如下:
1. 在E:\FODDER\SOUND目錄下準備五個WAV文件,文件名分別為:BK1.WAV--BK5.WAV。
2. 新建一個工程,在窗體中添加一個MMControl控件(?ο仍凇骯こ蹋?考?敝醒≡馦icrosoft Multimedia Control 5.0),一個Timer控件,其Interval屬性設為5000。
3. 雙擊窗體,在代碼窗口的對象下拉框中選擇“(通用)”,添加代碼Dim i As Integer。
4. 給Form的Load事件添加如下代碼:
Private Sub Form_Load()
MMControl1.Notify = False
MMControl1.Wait = True
MMControl1.Shareable = False
i = 1 注釋:首先播放第一首音樂
If Not (MMControl1.Mode = mciModeNotOpen) Then
MMControl1.Command = "close"
End If
MMControl1.DeviceType = "waveaudio"
MMControl1.filename = "e:\fodder\sound\bk" & Trim(Str(i)) & ".wav"
MMControl1.Command = "Open"
MMControl1.Command = "Play"
End Sub
5. 給Timer的Timer事件添加如下代碼
Private Sub Timer1_Timer()
If MMControl1.Mode = 525 Then 注釋:若一首樂曲放完,則放下一首
MMControl1.Command = "close"
i = i + 1
If i > 5 Then 注釋:五首音樂放完,則循環
i = 1
End If
MMControl1.DeviceType = "waveaudio"
MMControl1.filename = "e:\fodder\sound\bk" & Trim(Str(i)) & ".wav"
MMControl1.Command = "open"
MMControl1.Command = "play"
End If
End Sub
6. 此外,你還可在容器或菜單中加一個背景音樂開關。
原文轉自:http://www.anti-gravitydesign.com