2009-09-17 8 views
0

Je veux dans l'application de la victoire (écrit en C#), le son (format Wav) joue en arrière-plan, et la souris sur le contrôle joue petit fichier son wav, et quand cliquez sur le bouton, Arrêter l'arrière-plan Son et ...
Merci Pour votre aide.Jouer simultanément son en C#

+0

La question ne dit pas quel est le problème, ni comment vous essayez de jouer un son ni quelque chose comme ça. En fait c'est incomplet, correct? –

+0

ça sonne les devoirs? –

+0

I Utilisez "System.Media.SoundPlayer" pour lire le fichier WAV. et utilisez la méthode "PlaySync". – Modir

Répondre

0

vous pouvez utiliser Windows Media Player:

référence C: \ Windows \ System32 \ wmp.dll dans votre projet

pour lancer un fichier wav:

WMPLib.WindowsMediaPlayer wmp = new WMPLib.WindowsMediaPlayerClass(); 
wmp.URL = "[wav file path]"; 

//then control the player with : 

wmp.controls.play(), stop(), ... 

pour la deuxième wav fichier, faire la même chose avec une autre instance de WindowsMediaPlayer etc ...

Vous pouvez également utiliser Managed DirectX: Managed DirectX Tutorial Part 2

+0

Merci pour votre aide. – Modir

0

Avez-vous essayé de jouer chacun d'eux dans un fil séparé?

+0

NON, mais le bruit de fond dans le fil. – Modir

+0

Faites un essai, je pense que cela fonctionnera pour vous –

2

Vous pouvez essayer de regarder dans l'espace de noms System.Media. Il y a un SoundPlayer qui est capable de lire les fichiers Wave.

Pour lire un fichier wav dans une boucle, vous pouvez utiliser le code suivant:

string filename = @"C:\WINDOWS\Media\notify.wav"; 
System.Media.SoundPlayer player = new System.Media.SoundPlayer(filename); 
player.PlayLooping(); 

Pour arrêter la lecture, vous simple, arrêt d'appel():

player.Stop(); 

jouer un peu, il y a plus si vous en avez besoin.

+0

Merci, mais lorsque la souris sur l'événement de bouton se produire, jouer un autre son qui provoque l'arrêt du bruit de fond. – Modir

+0

Vous pouvez utiliser le même SoundPlayer. Appelez .Stop() et définissez la propriété SoundLocation sur le nouveau fichier wave, et appelez .Play() pour le lire. – Vivelin

Questions connexes