[VB.NET][WPF] Gérer l'audio avec 'MediaPlayer' [Résolu]

Jayme65 64 Messages postés lundi 23 avril 2007Date d'inscription 15 décembre 2016 Dernière intervention - 17 janv. 2012 à 13:54 - Dernière réponse : Jayme65 64 Messages postés lundi 23 avril 2007Date d'inscription 15 décembre 2016 Dernière intervention
- 21 janv. 2012 à 12:19
Bonjour,

Pour pouvoir utiliser le mp3 dans mon application j'ai décidé d'utiliser 'MediaPlayer'
Voici comment, basiquement, je l'utilise:

Dim backMusic as New MediaPlayer
backMusic.Open(New Uri("sbgm0005.mp3", UriKind.Relative))
backMusic.Volume = 0.1
backMusic.Play()


Et voici ma question:

Comment puis-je faire pour gérer l’arrêt de la chanson?
J'ai vu qu'il existait un évènement: 'MediaEnded', censé gérer la fin de la chanson...mais je ne vois pas comment le mettre en oeuvre (je suis...débutant ;-))

Commenr donc puis je utiliser un handler pour détecter la fin de la chanson?

D'avance merci pour toute aide que vous pourriez m'apporter!!
Afficher la suite 

Votre réponse

2 réponses

Meilleure réponse
Jayme65 64 Messages postés lundi 23 avril 2007Date d'inscription 15 décembre 2016 Dernière intervention - 21 janv. 2012 à 12:19
3
Merci
Merci Pivert!
Entretemps j'ai découvert "une" façon de faire. En utilisant un handler sur 'MediaPlayer.MediaEnded'

Pour tous ceux qui auront besoin de l'information, voici donc du code pour utiliser 'MediaPlayer' et notamment pour gérer la fin de lecture (avec dans le cas repris ici une répétition en boucle du fichier audio):
Class MainWindow 
    Dim backMusic As New MediaPlayer
    Private Sub Window_Loaded(ByVal sender As System.Object, ByVal e As System.Windows.RoutedEventArgs) Handles MyBase.Loaded
        AddHandler backMusic.MediaEnded, AddressOf backMusic_MediaEnded
        backMusic.Open(New Uri("sbgm0005.wav", UriKind.Relative))
        backMusic.Volume = 1
        backMusic.Play()
    End Sub
    Private Sub backMusic_MediaEnded(ByVal sender As Object, ByVal e As EventArgs)
        sender.Stop()
        sender.Position = TimeSpan.FromSeconds(0)
        sender.Play()
    End Sub
End Class

Merci Jayme65 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 96 internautes ce mois-ci

Commenter la réponse de Jayme65
cs_Le Pivert 5360 Messages postés jeudi 13 septembre 2007Date d'inscriptionContributeurStatut 22 septembre 2018 Dernière intervention - 21 janv. 2012 à 11:28
0
Merci
Bonjour,
Regarde ce site:
http://silkyroad.developpez.com/VBA/WindowsMediaPlayer/
Dans la paragraphe: afficher la durée du morceau en cours.
Tu récupères la durée et tu stoppes ta musique à cet instant en utilisant un Timer réglé sur ce temps.
@+Le Pivert
Commenter la réponse de cs_Le Pivert

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.