好的,我的问题很简单。我在Visual Studio的Visual Basic项目中有3个资源,都是音频文件。我希望我的应用程序播放用户在TextBox中键入的声音。
进一步解释: 我有资源“火”,“水”和“空气”。如果用户在文本框中键入Air,则使用
My.Computer.Audio.Play(My.Resources.Air, AudioPlayMode.Background)
但是我不想为每种可能性制作代码的副本,我只是想把它变成一个变量来作为一个对象。谁能帮我? :■
答案 0 :(得分:0)
您应该将其放入案例陈述中
Dim ResourceFilePathPrefix As String
If System.Diagnostics.Debugger.IsAttached() Then
'In Debugging mode
ResourceFilePathPrefix = System.IO.Path.GetFullPath(Application.StartupPath & "\..\..\resources\")
Else
'In Published mode
ResourceFilePathPrefix = Application.StartupPath & "\resources\"
End If
'you name your files Fire.wav, Water.wav or whatever you want.
playerStream = ResourceFilePathPrefix & textBox1.text + ".wav"
My.Computer.Audio.Play(playerStream, AudioPlayMode.Background)
或者您可以直接引用它:
Try
My.Computer.Audio.Play("C:\TEST\" & textBox1.text,AudioPlayMode.Background)
Catch ex As Exception
MsgBox("The file does not exist." & ex.Message, MsgBoxStyle.Critical)
End Try
假设你的wav文件是@c:\ test:)