我正在使用铁路广播系统,希望能够从列表中获取一些信息,例如“约克,达林顿,达勒姆”,然后在按下按钮后播放相关的录音。
有人可以帮忙吗?

最佳答案

一种选择是创建一个Dictionary,其中的键代表您的列表项,而值代表您希望在按下按钮后播放的声音的文件位置。然后,您可以将Dictionary绑定(bind)到控件,其中控件的显示文本是Dictionary的Key,控件的值是Dictionary的Value。到此为止,您只需获取控件的选定值即可播放。

这是使用ComboBox的示例:

Private stations As Dictionary(Of String, String)
Sub New()
    stations = New Dictionary(Of String, String)
    stations.Add("York, Darlington, Durham", "sound-a.mp3")
    'stations.Add("...", "...")

    With ComboBoxStations
        .DataSource = New BindingSource(stations, Nothing)
        .DisplayMember = "Key",
        .ValueMember = "Value"
    End With
End Sub

Private Sub PlaySound(ByVal sender As Object, ByVal e As EventArgs) Handles ButtonPlaySound.Click
    If (ComboBoxStations.SelectedValue IsNot Nothing) Then
        My.Computer.Audio.Play(ComboBoxStations.SelectedValue.ToString(), AudioPlayMode.WaitToComplete)
    End If
End Sub

关于vb.net - 如何基于VB中文本框的内容播放一系列音频文件?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/61783916/

10-11 00:27