Probleme Visual Basic, changer de mode

Résolu
Bonjour, Je débute en Programmation...
Habitué à Java qui lit toutes les classes, Je suis surpris par Visual Basic qui ne lis pour un projet Fenetre, que la class Form de départ.
Est ce que je dois Changer de type d'application, j'ai essayé Console, mais pareil. Ne lis que la class main de départ.

J'aimerais simplement qu'il me lise toutes les autres classes et qu'il me lance MessageBox.Show présent dans les autres classes, je met un exemple:

Public Class Form1
Public Sub Form1()
End Sub

End Class
Public Class Voiture
Private marque As String

Private modele As String
Private anneeCircu As Integer

Private puissance As Integer
Private essence As Integer

Public Sub FairelePlein(ByVal essence As Integer)
Me.essence = Me.essence + essence
End Sub
Public Sub GonflerMoteur(ByVal cvgagnes As Integer)
Me.puissance = Me.puissance + cvgagnes

End Sub
End Class
Class Voiture2
Public anneeCirculation As Integer = 1987

End Class
Class Personne
Public Sub frauderVoiture(ByVal laVoiture As Voiture2)
laVoiture.anneeCirculation = laVoiture.anneeCirculation + 5
MessageBox.Show("Age : " + laVoiture.anneeCirculation)
End Sub
End Class
Class Voiture3
Private marque As String
Public Function GetMarque() As String
GetMarque = Me.marque
End Function
Public Sub setMarque(ByVal laMarque As String)
Me.marque = laMarque
End Sub
Private modele As String

Private anneeCircu As Integer
Public Function GetAnneeCircu() As Integer
If (Me.anneeCircu > 2012) Then
MessageBox.Show("Annee Impossible")
GetAnneeCircu = -1
End If
GetAnneeCircu = Me.anneeCircu
End Function
Public Sub setAnneeCircu(ByVal anCircu As Integer)
If (anCircu > 2012) Then
MessageBox.Show("Année Invalide")
Else
Me.anneeCircu = anCircu
End If

End Sub
Private puissance As Integer
Private essence As Integer
'Ne peut pas être modifier
End Class
Class Voiture4
Private _marque As String
Public Property Marque() As String
Get
Return Me._marque

End Get
Set(ByVal value As String)
Me._marque = value
End Set
End Property
Private _marque1 As String
Public ReadOnly Property Marque1() As String
Get
Return Me._marque1
End Get
End Property
Private _puissance As Integer
Public WriteOnly Property Puissance() As Integer
Set(ByVal value As Integer)
Me._puissance = value
End Set
End Property

End Class
Class Personne1
Public Sub frauderVoiture(ByVal laVoiture As Voiture2)
laVoiture.anneeCirculation = laVoiture.anneeCirculation + 5
MessageBox.Show("Age : " + laVoiture.anneeCirculation)
End Sub
Public Sub vendreVoiture(ByVal laVoiture As Voiture3)
Dim texteAnnonce As String
laVoiture.setAnneeCircu(2002)
laVoiture.setMarque("LaMarqueTropBien")
texteAnnonce = "Vends voiture" & laVoiture.GetMarque
texteAnnonce = texteAnnonce & "immatriculé en "
texteAnnonce = texteAnnonce & laVoiture.GetAnneeCircu()
MessageBox.Show(texteAnnonce)

End Sub

End Class

Que dois je faire Merci.

14 réponses

  1. Bonjour,

    Suggestion :

    En supposant que ta classe Voiture se définit comme suit :

    Public Class Voiture
    
    #Region "--- Attributs ---"
    	Private mMarque As String
    	Private mModele As String
    	Private mAnneeCircu As Integer
    	Private mPuissance As Integer
    	Private mEssence As Integer
    	Private mNbrRoue As Integer
    #End Region
    
    #Region "--- Propriétés ---"
    
    	Public Property Marque() As String
    		Get
    			Return Me.mMarque
    		End Get
    		Set(ByVal value As String)
    			Me.mMarque = value
    		End Set
    	End Property
    	Public Property Modele() As String
    		Get
    			Return Me.mModele
    		End Get
    		Set(ByVal value As String)
    			Me.mModele = value
    		End Set
    	End Property
    	Public Property AnneeCirculation() As Integer
    		Get
    			Return Me.mAnneeCircu
    		End Get
    		Set(ByVal value As Integer)
    			Me.mAnneeCircu = value
    		End Set
    	End Property
    	Public Property Puissance() As Integer
    		Get
    			Return Me.mPuissance
    		End Get
    		Set(ByVal value As Integer)
    			Me.mPuissance = value
    		End Set
    	End Property
    	Public Property Essence() As Integer
    		Get
    			Return Me.mEssence
    		End Get
    		Set(ByVal value As Integer)
    			Me.mEssence = value
    		End Set
    	End Property
    	Public Property NbrRoue() As Integer
    		Get
    			Return Me.mNbrRoue
    		End Get
    		Set(ByVal value As Integer)
    			Me.mNbrRoue = value
    		End Set
    	End Property
    #End Region
    
    #Region "--- Méthodes ---"
    
    	''' <summary>
    	''' Constructeur par défaut
    	''' </summary>
    	''' <remarks></remarks>
    	Public Sub New()
    
    	End Sub
    
    	Public Sub FairelePlein(ByVal pEssence As Integer)
    		Me.mEssence += pEssence
    	End Sub
    
    	Public Sub GonflerMoteur(ByVal cvgagnes As Integer)
    		Me.mPuissance += cvgagnes
    	End Sub
    
    	Public Sub FrauderVoiture()
    		Me.mAnneeCircu += 5
    		MessageBox.Show(String.Concat("Age : ", Me.mAnneeCircu.ToString))
    	End Sub
    
    	Public Sub VendreVoiture()
    		Dim texteAnnonce As New System.Text.StringBuilder
    		texteAnnonce.Append(String.Concat("Vends voiture ", Me.mMarque))
    		texteAnnonce.Append(String.Format("{0}{1}{2}", " ", Me.mModele, " "))
    		texteAnnonce.Append(" immatriculé en ")
    		texteAnnonce.AppendLine(Me.mAnneeCircu.ToString)
    		MessageBox.Show(texteAnnonce.ToString)
    	End Sub
    
    #End Region
    
    End Class
    


    Et le code du bouton :

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    
    	Dim Voiture1 As Voiture = New Voiture
    
    	Voiture1.AnneeCirculation = 1987
    	Voiture1.Marque = "Toyota"
    	Voiture1.Modele = "Corolla"
    	Voiture1.Puissance = 120
    	Voiture1.Essence = 30
    
    	Voiture1.VendreVoiture()
    
    End Sub
    


    Ça devrait bien fonctionner :-)

    Cdt

    Lupin
    2
    1. Contributeur
      Bonjour,
      Je n'ai pas examiné tout ton code mais il semble que tu n'ai pas saisi le principe, tu peu très bien lancer ce que tu veux à partir de la "Forme de départ" qui n'est en fait que le point d'entrée.
      Exemple :
      Public Class Form1
      
          Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
              'C'EST ICI QUE COMMENCE l'APPLI
              'MAIS TU NE PEU PAS APPELER TES FONCTIONS IL FAUT D'ABORD INITIALISER LES VARIABES
          End Sub
      
      End Class

      Pour initialiser les variables le mieux serait de créer le design de Form1 avec des contrôles qui te permette de sélectionner ce que tu veux.
      Quand une sélection est faite tu peu lancer la Form2
          MessageBox.Show

      Mais ça ne supporte pas de paramètre
      Pour communiquer entre formes tu dois mettre un module général .bas avec des variable Public.
      Voir quelque tuto pour comprendre la structure
      Encore un mais il y en a des miliers sur la toile.
      1
      1. Contributeur
        Un Module c'est aussi une classe mais qui est visible dans toute l'appli, sauf stipulation contraire, tout ce qui y est est public, les fonctions, les sub, les variables etc..
        Dans l'IDE -> Projet -> ajouter une classe -> Module
        1
        1. Merci Bcp, cependant je viens de voir que le problème réapparait...

          ,Je n'arrive pas a crée des accesseurs Partagés à partir d'un Me.nom , J'ai le droit a: impossible de faire référence a un membre d'une instance d'une classe a partir d'une méthode partagé
          Et quand je l'enleve le partage (Shared) Une référence a un membre non partagé requiert une référence Objet...

          Je suis perdu, le livre a du sauté des étapes car elle ne donne qu'une partie du programme en plus des erreurs d'écriture.
          0
        2. Est ce que le Me. Est vraiment utile ?
          0
        3. Apparement elle fait référence a l'instance actuelle d'une classe. Je préfère mm si ca prend plus de temps de définir l'instance dans laquelle elle se trouve, car sinn elle ne peut etre partagé.
          0
      2. Ok, merci de la réponse. J'ai crée un nouveau bouton, je lui est mis tout ce qu'il lui faut pour qu'il affiche le message. Il m'a bien renvoyé le message que je cherchait grâce a MessageBox.Show. Je croyais que ca ne marcherais pas.

        Je suis débutant en Visual, ce qui fait que j'ai un peu de mal a comprendre le concept d'une fenêtre de départ. Je dois trop être habitué a Java.
        Grace a toi j'ai compris que Visual Sudio et Java n'ont rien a voir.

        Le problème avec le livre que j'ai acheté pour apprendre la programmation, c'est qu'ils ne définissent pas tout et font des erreurs. Si bien que je suis obligé de les corrigés en cherchant sur Internet.

        J'ai entendu parler de Module, mais j ai un peu de mal a voir la différence avec une classe.
        Merci Bcp.
        0
        1. Voila Mon appli  
          Public Class Form1 
          
              Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 
          
              End Sub 
          
              Public Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click 
                  MessageBox.Show("Une voiture a " & Voiture.nbreroue & " roues.") 
                  Dim voiture1 As New Voiture() 
                  Dim voiture2 As New Voiture() 
                  Dim voiture3 As New Voiture() 
                  MessageBox.Show("Nbre de roues de la voiture 1 = " & Voiture.nbreroue & " roues.") 
                  MessageBox.Show("Nbre de roues de la voiture 2 = " & Voiture.nbreroue & " roues.") 
                  MessageBox.Show("Nbre de roues de la voiture 3 = " & Voiture.nbreroue & " roues.") 
              End Sub 
          End Class 
          Public Class Voiture 
              Public Shared nbreroue As Integer = 4 
              Public Sub Lol() 
                  MessageBox.Show("Une voiture a " & Voiture.nbreroue & " roues.") 
          
              End Sub 
          End Class 
          
          0
      3. Merci deja d'avoir retravaillé tout le programme. Je garde Ca précieusement.

        Si je me trompe pas Donc (j'aime bien tout comprendre Mm si je débute) tu a utiliser des accesseurs (Getteurs et setteurs) pour que les variables de bases soient Récupérer et Défini (Partagé). Puis tu as utilisé des méthodes pour modifier les valeurs (frauder) ou les afficher (VendreVoiture)
        Puis lorsque l'on clique sur Le bouton On instancie Une nouvelle voiture avec des paramètres et on affiche L'annonce.

        C'est PARFAIT, je l'ai testé et il marche. Ca m'a énervé en ne voyant aucune aide concernant les boutons et en essayant de comprendre sa logique (auteur du livre) qui n'est pas très clair. Mais la c'est très clair (enfin si j'ai bien compris) et surtout complet.

        J'ai aussi réalisé un autre programme, l'auteur note "Liez maintenant cette méthode au bouton Sauvegarder"

        J'ai recherché sur internet comment lier. Je suis tomber sur le mm programme que je devais faire, soit une personne qui avait le même livre et le même problème.

        Donc, c'est grâce a toi, à la communauté qu'on arrive a avancer face aux erreurs qui sont grotesques. Le livre n'est pas mauvais mais pour une 4eme edition, c'est anormal...

        En tout cas tu as la capacité de faire des cours (c'est peut être deja le cas), car Tout est propre; bien séparer, on voit le programme qui se lance sous nos Yeux.
        Merci encore et encore. Je remercie aussi lermite222 qui m'a permis d'anticiper l'apprentissage des modules et comprendre le fonctionnement de VB.

        Thanks ;)
        0
        1. J'ai encore un nouveau problème. Cette fois ci c'est au niveau de la serialisation. Le fichier est bien crée mais je n'ai que les Integer qui sont egals a 0...

          Voici le code

          Imports System.Runtime.Serialization.Formatters.Binary
          Imports System.IO
          Imports System.Xml.Serialization
          
          
          Public Class Form1
              Private Function XMLSerialize(ByVal monLivre As Livre) As Boolean
                  If monLivre Is Nothing Then Return False
                  Dim stream2 As New StreamWriter("C:\Aide\Product.xml")
                  Dim serializer As New XmlSerializer(GetType(Livre))
                  serializer.Serialize(stream2, monLivre)
                  stream2.Close()
                  Return True
              End Function
          
          Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
                  Dim livre1 As New Livre()
          
                  If (XMLSerialize(livre1) = True) Then
                      'tout c'est bien passé
                  Else
                      MessageBox.Show("erreur")
                  End If
              End Sub
          End Class
          
          
          'Class Livre
          Imports System.Runtime.Serialization.Formatters.Binary
          Imports System.IO
          Imports System.Xml.Serialization
          
          <Serializable()> Public Class Livre
              Private mTitre As String
              Private mAuteur As String
              Private mEditeur As String
              Private mAnneeDeParution As Integer
              Private mNbreDePages As Integer
              Private mIsbn As Long
          
              ReadOnly Property Titre() As String
                  Get
                      Return mTitre
                  End Get
                  'Set(ByVal value As String)
                  '    mTitre = value
                  'End Set
              End Property
          
              ReadOnly Property Auteur() As String
                  Get
                      Return mAuteur
                  End Get
                  'Set(ByVal value As String)
                  '    mAuteur = value
                  'End Set
              End Property
          
              ReadOnly Property Editeur() As String
                  Get
                      Return mEditeur
                  End Get
                  'Set(ByVal value As String)
                  '    mEditeur = value
                  'End Set
              End Property
          
              Property AnneeDeParution() As Integer
                  Get
                      Return mAnneeDeParution
                  End Get
                  Set(ByVal value As Integer)
                      mAnneeDeParution = value
                  End Set
              End Property
          
              Property NbreDePages() As Integer
                  Get
                      Return mNbreDePages
                  End Get
                  Set(ByVal value As Integer)
                      mNbreDePages = value
                  End Set
          
          
              End Property
          
              Property Isbn() As Long
                  Get
                      Return mIsbn
                  End Get
                  Set(ByVal value As Long)
                      mIsbn = value
                  End Set
              End Property
          
          End Class
          
          0
          1. C bn j'ai reglé le probleme.
            Pour ceux qui aurait le mm livre et que ca interesse :
            Imports System.IO
            Imports System.Xml.Serialization
            
            Module Module1
                Public Class op
                    Public Shared Function XMLSerialize(ByVal monLivre As Livre) As Boolean
            
            'La notion Shared permet le partage avec les autres Classe
            'Si vous voulez vous pouvez rajouter un systeme de gestion de la reponse du Boolean Ex If False, "Show erreur".
            
                        If monLivre Is Nothing Then Return False
                        Dim stream2 As New StreamWriter("F:Product.xml")
            
            "Le fichier va être crée les informations notés dans le Disque local F sous forme Xml.
            
                        Dim serializer As New XmlSerializer(GetType(Livre))
                        serializer.Serialize(stream2, monLivre)
                        stream2.Close()
                        Return True
                    End Function
                End Class
            
            End Module
            
            
            Public Class Form1
            
                Dim Livre1 As New Livre
            
                Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
                    Me.Conversion()
            'Le bouton va lancer la class Conversion, On ne peut pas faire la conversion directement dans la classe du bouton!
                End Sub
            
                Public Sub Conversion()
                    Livre1.Titre = TextBox1.Text
                    Livre1.Auteur = TextBox2.Text
                    Livre1.Editeur = TextBox3.Text
                    Livre1.AnneeDeParution = TextBox4.Text
                    Livre1.NbreDePages = TextBox5.Text
                    Livre1.Isbn = TextBox6.Text
            'Ici Les Le Livre1 Prend les paramètres que vous avez entrer dans les Textbox
                    Module1.op.XMLSerialize(Livre1)
            'Puis on lance la function XMLSerialize avec comme paramètre Livre1 pour Sauver les attributs dans un fichier Xml.
                End Sub
            End Class
            Public Class Livre
                Private mTitre As String
                Private mAuteur As String
                Private mEditeur As String
                Private mAnneeDeParution As Integer
                Private mNbreDePages As Integer
                Private mIsbn As Long
            
                Property Titre() As String
                    Get
                        Titre = mTitre
                    End Get
                    Set(ByVal value As String)
                        mTitre = value
                    End Set
                End Property
            
                Property Auteur() As String
                    Get
                        Auteur = mAuteur
                    End Get
                    Set(ByVal value As String)
                        mAuteur = value
                    End Set
                End Property
            
                Property Editeur() As String
                    Get
                        Editeur = mEditeur
                    End Get
                    Set(ByVal value As String)
                        mEditeur = value
                    End Set
                End Property
            
                Property AnneeDeParution() As Integer
                    Get
                        AnneeDeParution = mAnneeDeParution
                    End Get
                    Set(ByVal value As Integer)
                        mAnneeDeParution = value
                    End Set
                End Property
            
                Property NbreDePages() As Integer
                    Get
                        NbreDePages = mNbreDePages
                    End Get
                    Set(ByVal value As Integer)
                        mNbreDePages = value
                    End Set
            
            
                End Property
            
                Property Isbn() As Long
                    Get
                        Isbn = mIsbn
                    End Get
                    Set(ByVal value As Long)
                        mIsbn = value
                    End Set
                End Property
            
            End Class
            
            0
            1. re:

              Quelques commentaires ...

              Chaque programmeur définit son style et il n'y as pas vraiment
              de mauvaises façon de faire, néanmoins, il est plus facile habituellement
              d'entretenir un programme si les règles de l'art sont toujours respectées.
              Je veux dire par là de toujours créer ses objets de la même façon.

              Lorsque tu créé un objet, exemple ta classe Livre : Public Class Livre

              Place toujours un constructeur, même vide
              ''' <summary>  
              ''' Constructeur par défaut  
              ''' </summary>  
              ''' <remarks></remarks>  
              Public Sub New()  
              
              End Sub  
              


              Tu peux aussi créer une sucharge du New ainsi :

              ''' <summary>  
              ''' Constructeur par défaut  
              ''' </summary>  
              ''' <remarks></remarks>  
              Public Sub New()  
              
              End Sub  
              
              ''' <summary>  
              ''' Surcharge du constructeur  
              ''' </summary>  
              ''' <remarks></remarks>  
              Public Sub New(ByVal pTitre As String, _  
                    ByVal pAuteur As String, _  
                    ByVal pEditeur As String, _  
                    ByVal pAnneeDeParution As Integer, _  
                    ByVal pNbreDePages As Integer, _  
                    ByVal pIsbn As Long)  
              
               Me.mTitre = pTitre  
               Me.mAuteur = pAuteur  
               Me.mEditeur = pEditeur  
               Me.mAnneeDeParution = pAnneeDeParution  
               Me.mNbreDePages = pNbreDePages  
               Me.mIsbn = pIsbn  
              
              End Sub  
              


              Tu pourras ainsi instancié ton objet avec des paramètres :

              Private Livre1 As Livre = New Livre(TextBox1.Text, TextBox2.Text, TextBox3.Text, TextBox4.Text, TextBox5.Text, TextBox6.Text)

              Dans ta classe Op, dans la méthode je recommande de ne pas placer
              plus d'un Return dans celle-ci, lorsque celle-ci deviendra complexe,
              tu pourrais passer facilement à côté d'un problème si tu commence
              à envoyer des [ Return ] un peu partout dans la méthode :

              Public Class op  
              
               Public Shared Function XMLSerialize(ByVal monLivre As Livre) As Boolean  
              
                Dim Reponse As Boolean = False  
              
                If monLivre IsNot Nothing Then  
                 Dim stream2 As New StreamWriter("F:Product.xml")  
                 Dim serializer As New XmlSerializer(GetType(Livre))  
                 serializer.Serialize(stream2, monLivre)  
                 stream2.Close()  
                 Reponse = True  
                End If  
              
                Return Reponse  
              
               End Function  
              
              End Class  
              


              Sous .NET, je n'ai utlisé que très peu les modules, si tu veux
              regrouper des classes utilise plutôt un [ NameSpace ] commun .

              Tu peux aussi utliser les modules comme extension a tes classes.

              <Extension()> _  
              Public Module Module1  
              
               <Extension()> _  
               Public Sub Afficher(ByVal pLivre As Livre)  
              
                Dim Chaine As New System.Text.StringBuilder  
                Chaine.AppendLine(pLivre.Titre)  
                Chaine.AppendLine(pLivre.Auteur)  
                Chaine.AppendLine(pLivre.Editeur)  
                Chaine.AppendLine(pLivre.AnneeDeParution.ToString)  
                Chaine.AppendLine(pLivre.NbreDePages.ToString)  
                Chaine.AppendLine(pLivre.Isbn.ToString)  
                MessageBox.Show(Chaine.ToString)  
              
               End Sub  
              
              End Module  
              


              l'appel se fait alors ainsi :

              monLivre.Afficher

              Cela demeure des suggestions et n'oblige à rien, tu prends ce qui te plait
              et c'est tout.

              Cdt

              Lupin
              0
              1. Il me reste des problèmes de compréhension concernant l'instanciation des Objets, Notamment les paramètres. Je pense que je dois davantage programmer pour comprendre les subtilité des paramètres. Pour les extensions, Je pense que mon livre doit aborder beaucoup plus tard ce point. J'ai utiliser ce que je sais, c'est a dire le partage de Classe, qui reste pour moi le plus simple.

                Pour les renvoies return c'est très clair.

                Ces suggestions sont très bonnes, j'accepte chaque remarque car je sais que je fais des erreurs en tant que débutant. Je dois encore acquérir de la rigueur...
                Merci encore.
                0
                1. Je viens d'apprendre a mieux organsiner mes programmes. A bien séparé les différentes parties pour que le programme puisse être édité par d'autres personnes.

                  Ce programme que tu m'as transmit correspond a la hiérarchie qui m'a été imposé.
                  Ça me permet de mieux comprendre le fonctionnement et de confirmé la demande de bien séparé le programme en plusieurs Classe/Projet.

                  J'ai aussi Appris le fonction namespace/Imports. C'est bcp plus pratique
                  J'ai testé ton programme, Il marche sauf quand j'insèreune nouvelle Ligne, (j'ai une exception) . J'ai pas tout regardé mais je comprend un petit peu le fonctionnement majeur (sql, Namespace), Quand j'aurais fini mon livre j'essaierais de refaire ton Programme...
                  Merci
                  0
                  1. re:

                    Ligne 177 du projet form doit être remplacé par :

                    CollectionLocale.Add(EntY)

                    Cdt

                    Lupin
                    0
                  2. Ok c bon ca marche.
                    J'aurais besoin d'un dernier renseignement. Dans mon livre, on apprend a créer un fichier d'aide CHM, crée par NDOC. Je précise comme mm que mon Livre a edité en 2012... Ils n'ont pas actualisé le processus. De plus l'aide CHM et le logiciel Ndoc ne sont plus utilisés depuis la version 2005 de Visual Studio.

                    Que dois-je utilisé pour crée un fichier d'aide qui correspond aux usages d'aujourd'hui?

                    Merci encore pour tout.
                    0
                  3. re :

                    Personnellement, je ne connais que [ Robothelp ] d'Adobe.

                    Cdt

                    Lupin
                    0
                  4. J'ai encore un petit problème... je cherche a créer un lecteur Audio avec directX. Mais une fois la valeur instancier, je ne peux modifier son état a partir d'autre Fonction.
                    Imports Microsoft.DirectX 
                    Imports Microsoft.DirectX.AudioVideoPlayback 
                    
                    Public Class Form1 
                    
                        Public Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click 
                            If OpenFileDialog1.ShowDialog = Windows.Forms.DialogResult.OK Then 
                                Dim PlayAudio As New Microsoft.DirectX.AudioVideoPlayback.Audio(OpenFileDialog1.FileName) 
                                PlayAudio.Play() 
                    
                                'La musique que j'ai choisi est lancé. 
                    
                            End If 
                        End Sub 
                    
                        Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click 
                    
                        End Sub 
                    
                        Public Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click 
                    
                            'Je cherche a modifier l'état de la musique pour la mettre sur pause mais je n'a arrive pas a accéder a PlayVideo. 
                    
                    
                        End Sub 
                    End Class 
                    
                    0
                  5. re:

                    désolé, je ne connais pas cette partie, je n'ai jamais travaillé avec de la musique ...

                    Cdt

                    Lupin
                    0
                2. Contributeur
                  Re,
                  En VB6 je me sert de Windows Média Player qui permet toutes les fonctions d'un lecteur CD, Play, pause, Liste de musique etc..
                  Iil est aussi disponible en .Net mais je ne connais pas la syntaxe.
                  A+
                  0