vb.net - 如何在VB.NET中添加一键播放两个声音文件
问题描述
我想在 VB.NET 中制作一个按钮,有两个可变图片和两个可变声音,例如:如果我单击按钮,按钮的背景将显示 pic1 并播放 sound1.wav 然后如果我再次单击按钮将显示 pic2 为按钮背景和播放 sound2.wav
我可以使用此代码更改按钮背景,但我不知道如何添加两个播放声音:
Public Class Form1
Dim Index As Integer = 0
Dim Image1 As New List(Of Image)
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Index = Index Xor 1
Button1.BackgroundImage = Image1(Index)
End Sub
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Image1.Add(Image.FromFile("D:\pic1.png"))
Image1.Add(Image.FromFile("D:\pic2.png"))
End Sub
End Class
解决方案
Image 类具有 tag 属性,因此您可以使用它来存储列表中加载的每个图像的声音路径。
Public Class Form1
Dim Index As Integer = 0
Dim Image1 As New List(Of Image)
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Index = Index Xor 1
Button1.BackgroundImage = Image1(Index)
My.Computer.Audio.Play(Image1(Index).Tag, AudioPlayMode.WaitToComplete)
End Sub
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Image1.Add(Image.FromFile("D:\pic1.png"))
Image1(0).tag = "d:\sound1.wav"
Image1.Add(Image.FromFile("D:\pic2.png"))
Image1(1).tag = "d:\sound2.wav"
End Sub
End Class
希望这可以帮助
推荐阅读
- javascript - Twilio Chat getChannelDescriptors() 分页器页面项目未定义
- vapor - 如何在 Vapor 4 中按数组过滤?
- python - 如何在python中找到pow(a,b,c)的指数
- c# - 如何将来自传感器的二进制有效负载解码为 Json 有效负载
- go - 如何使用 Go SDK 为默认重试器设置 DynamoDB requestTimeout?
- browser - SSRS 报告:条码未在浏览器上呈现
- r-markdown - 如何翻译 bookdown::html_document2 文档中的单词“Figure”和“Table”?
- arrays - 将 char 变量存储在 C 中的其他 char 变量中
- css - bootstrap:col-xs-6 在移动视图中以 100% 的宽度显示
- vue.js - 为什么这个vue组件不渲染