Controler les evenements de plusieurs controles [Résolu]

Signaler
Messages postés
379
Date d'inscription
mardi 19 mars 2002
Statut
Membre
Dernière intervention
20 avril 2011
-
Messages postés
14
Date d'inscription
mardi 8 mars 2005
Statut
Membre
Dernière intervention
9 mars 2005
-
Bonjour,

j'ai un formulaire avec plein de controles dont de nombreux boutons.

J'avais lu quelque part, mais je n'ai plus que de vagues souvenirs, qu'on pouvait gérer les evenements de ces boutons "en lot".

En fait, je souhaiterais que sur le "clic" d'un bouton quelconque, il change de couleur (je suis en VB.NET si ça peut aider).

Mais bien entendu, je ne veux pas sur mes 10000000000000 boutons me taper 10000000000 fois la gestion de l'evenement "clic".

Avis aux amateurs !

Et merci d'avance pour votre aide.

Seb.

5 réponses

Messages postés
99
Date d'inscription
mardi 6 avril 2004
Statut
Membre
Dernière intervention
4 décembre 2008

Il sufit de faire ça:

Private
Sub Button_Click(
ByVal sender
As System.Object,
ByVal e
As System.EventArgs)
Handles Button1.Click, Button2.Click, Button3.Click, Button1.Click, Button4.Click .....



'code



End
Sub

Antoine
3
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 179 internautes nous ont dit merci ce mois-ci

Messages postés
14
Date d'inscription
mardi 8 mars 2005
Statut
Membre
Dernière intervention
9 mars 2005

Ma solution; créer les boutons en code et leur donnée tous le même 'Handler'

genre

private sub CreerBouton()
dim objBouton as Button

for i = 0 to nbBouton
objBouton = new Button
objBouton.left = x
objBouton.top = y
objBouton.name = "Bouton" & i
objBouton.text = "Cliquer ici"
AddHandler objBouton.Click, AdressOf monBoutonClick
next

end sub


private Sub monBoutonClick()
'code à ajouter
end sub
Messages postés
379
Date d'inscription
mardi 19 mars 2002
Statut
Membre
Dernière intervention
20 avril 2011
1
Merci ! Vraiment pas mal, mais la meme chose avec des boutons placés dans le concepteur ?...

Merci tout de meme !

Seb
Messages postés
14
Date d'inscription
mardi 8 mars 2005
Statut
Membre
Dernière intervention
9 mars 2005

c'est un truc qui était facile à l'époque comme en javascript on peut nommer pluieurs controle sous le même nom et avoir une collection ou appelé la même fonction

comme vb.net est orienté-objet pour arrivé à un résultat semblable il te faudrait te confectionné un controle, une partie de vb vraiment pationnante mais délicate. avec un controle tu peux faire une classe indexée. si tu t'y connais go tu t'amuseras.

sinon la solution qui me vient à l'esprit pour évité une telle aventure est de coder un évenement d'un bouton et référer cette évenement dans chaque click de chaque bouton

genre



Private
Sub Button1_Click(
ByVal sender
As System.Object,
ByVal e
As System.EventArgs)
Handles Button1.Click



'code



End
Sub



Private
Sub Button2_Click(
ByVal sender
As System.Object,
ByVal e
As System.EventArgs)
Handles Button2.Click


Button1_Click(sender, e)



End
Sub
Messages postés
14
Date d'inscription
mardi 8 mars 2005
Statut
Membre
Dernière intervention
9 mars 2005

Encore plus simple merci