1

好的,我的问题很简单。我在 Visual Studio 的 Visual Basic 项目中有 3 个资源,都是音频文件。我希望我的应用程序播放用户在 TextBox 中键入的名称的声音。

进一步解释一下:我有资源“火”、“水”和“空气”。如果用户在文本框中输入 Air,那么我使用

My.Computer.Audio.Play(My.Resources.Air, AudioPlayMode.Background)

但是我不想为每种可能性制作代码的副本,我只想将它变成一个变量以作为对象播放。谁能帮我?:秒

4

1 回答 1

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 :)

于 2013-07-15T17:47:05.963 回答