该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
如题,这是一个"笨办法"
但还是比较好用的.
首先,playsound函数只能一次播放一个音频文件
如果播放第二个音频,之前的音频就会终止.
对此我做了一个测试,建立两个不同的窗体
并且在它们当中写下如下代码:
'-------以下是第一个窗体中的代码----------'
Option Explicit
Private Const SND_ASYNC = &H1 ' play asynchronously
Private Const SND_FILENAME = &H20000 ' name is a file name
Private Const SND_LOOP = &H8 ' loop the sound until next sndPlaySound
Private Sub Form_Load()
PlaySound App.Path & "\音频\Higher.wav", 0, SND_FILENAME Or SND_ASYNC Or SND_LOOP
Form2.Show
End Sub
Private Sub Form_Unload(Cancel As Integer)
Unload Form2
PlaySound 0, 0, 0
End Sub
'----------------------以下是第二个窗体中的代码----------------------
Option Explicit
Private Const SND_ASYNC = &H1 ' play asynchronously
Private Const SND_FILENAME = &H20000 ' name is a file name
Private Const SND_LOOP = &H8 ' loop the sound until next sndPlaySound
Private Sub Form_Load()
PlaySound App.Path & "\音频\Step.wav", 0, SND_FILENAME Or SND_ASYNC Or SND_LOOP
End Sub
Private Sub Form_Unload(Cancel As Integer)
PlaySound 0, 0, 0
End Sub
这里的大致思路就是当第一个窗体显示时,也显示第二个窗体
在两个窗体中分别写上Playsound的声明和调用
当第一个窗体被关闭时也关第二个
然后......
我失败了...
仍然只能播放一条音频