Créer un événement "bouton_click" à partir d'un bouton créé côté code.

lordcs Messages postés 2 Date d'inscription dimanche 25 octobre 2009 Statut Membre Dernière intervention 25 octobre 2009 - 25 oct. 2009 à 14:33
lordcs Messages postés 2 Date d'inscription dimanche 25 octobre 2009 Statut Membre Dernière intervention 25 octobre 2009 - 25 oct. 2009 à 19:53
Bonjour, je suis débutant en vb et j'aimerais savoir comment créer l'événement d'un control à partir du code et non du concepteur de vu.
Voici un code simple comme exemple:

Public Class Form1


Public Class Form1

    Dim bouton1 As Button

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load


        bouton1 = New Button
        bouton1.Location = New System.Drawing.Point(50, 50)
        bouton1.Text = "cliquez ici"
        Me.Controls.Add(bouton1)


    End Sub

    Private Sub Bouton1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)

        MsgBox("bonjour")

    End Sub

End Class




Voilà, j'ai essayer ça mais ça ne marche pas. J'ai créer un bouton lorsque le log se lance. Mais je n'arrive pas à créer l'événement " lorsqu'on clique sur bouton1, envoyer un msgbox qui indique "bonjour"".


Si vous pouviez me dire quoi faire ce serait sympa.
Merci.

5 réponses

Utilisateur anonyme
25 oct. 2009 à 14:42
Salut,

Tu as oublié le Handles Bouton1.Click :
Private Sub Bouton1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Bouton1.Click


_____________
Kenji
0
jmf0 Messages postés 1566 Date d'inscription mardi 26 décembre 2000 Statut Membre Dernière intervention 5 avril 2013 8
25 oct. 2009 à 14:58
C'est du VB6, tout cà ? Tiens !.... j'aurais pas cru
0
Utilisateur anonyme
25 oct. 2009 à 15:09
Ha oui tiens, surment une grosse évolution du vb6 ^^

J'ai oublié de présiser de rajouter le withevents
Dim WithEvents bouton1 As Button


_____________
Kenji
0
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
25 oct. 2009 à 15:15
Charles, je ne pense pas que ta solution avec le Handles marche. En effet, le bouton n'existant pas à la compilation, ça devrait généré un message d'erreur.


Par contre, lorsque on crée un controle dynamiquement, il faut ensuite abonner ses évènements :

Public Class Form1

    Dim bouton1 As Button

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load


        bouton1 = New Button
        bouton1.Location = New System.Drawing.Point(50, 50)
        bouton1.Text = "cliquez ici"
        Me.Controls.Add(bouton1)
-->     AddHandler Bouton1.Click, AddressOf Bouton1_Click  

    End Sub

    Private Sub Bouton1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)

        MsgBox("bonjour")

    End Sub

End Class


Ne pas oublier de désabonner l'évènement avec RemoveHandler avant de détruire le contrôle.


[i][b]---- Sevyc64 (alias Casy) ----
[hr]# LE PARTAGE EST NOTRE FORCE #/b/i
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
lordcs Messages postés 2 Date d'inscription dimanche 25 octobre 2009 Statut Membre Dernière intervention 25 octobre 2009
25 oct. 2009 à 19:53
Merci beaucoup à tous, je sais maintenant comment faire.

Sinon je m'excuse d'avoir posté mon message au mauvais endroit, je ne savais pas vraiment ou le mettre.
0
Rejoignez-nous