J'ai un problème avec un jeu. Je veux jouer un son d'arrière-plan et un autre son lorsque vous cliquez sur un bouton. Lorsque cela se produit, le son d'arrière-plan s'arrête et le deuxième son commence. Lorsque le deuxième son est terminé, aucun son ne sera joué.Comment jouer 2 sons différents en même temps? (Visual basic)
Vous pouvez voir mon code ci-dessous:
Imports System.Media.SoundPlayer
Public Class GamePlaying
Dim mainmenusndplayer As New System.Media.SoundPlayer
Private Sub GamePlaying_FormClosing(ByVal sender As System.Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles MyBase.FormClosing
MainMenu.Show()
mainmenusndplayer.Stop()
End Sub
Private Sub btn_Fire_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_Fire.Click
btn_Fire.Enabled = False
Dim shotsound As New System.Media.SoundPlayer
shotsound.Stream = My.Resources.TankShoot
shotsound.Play()
End Sub
Private Sub GamePlaying_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
mainmenusndplayer.Stream = My.Resources.WoT_Roll_Out
mainmenusndplayer.Load()
mainmenusndplayer.PlayLooping()
End Sub
End Class
Je ne suis pas très confiant sur la pièce audio, mais cela ressemble à un cas pour le filetage - un exemple C# que j'ai trouvé ici - http://stackoverflow.com/questions/6240002/play-two-sounds -simultaneusly – InbetweenWeekends
duplication possible de [Jouer plusieurs sons en utilisant SoundPlayer] (http://stackoverflow.com/questions/1285294/play-multiple-sounds-using-soundplayer) – jaket
Cette question a déjà une réponse: http: // stackoverflow. com/questions/1285294/play-multiple-sons-using-soundplayer. En outre, ce n'est pas un problème de threading - SoundPlayer.Play est déjà Async. – jaket