Salut a tous
voila je travaile sur un composant et j'ai presque fini le travail mais j'ai un petit probleme
dans ma class je veux quand l'utilisateur click sur un boutton specifié ma fonction retourn une valeur
alors je veux surveiller cet evenement
Salut a tous
voila je travaile sur un composant et j'ai presque fini le travail mais j'ai un petit probleme
dans ma class je veux quand l'utilisateur click sur un boutton specifié ma fonction retourn une valeur
alors je veux surveiller cet evenement
par exemple
si boutton1 est clické alors
executer code
fin si
si boutton2 est clické alors
executer code
fin si
Il faut reprendre les bases la.
Le sujet est : Comment creer un evenement.
Apparement tu as deux bouttons c'est ca?
Et tu veux que chaque boutton est son propre evenement?
Quand tu es en mode graphique et que tu double-clique sur un boutton, ca te automatiquement la procedure.
Ca va te mettre un truc du style:
T as plus qu a mettre le code dedans. Et faire pareil pour le boutton 2.Sub boutton1_click(sender e, eventargs blabla)
end sub
Juste un petit (mais important) oubli dans ton code :
Rajoute Handles Button1.click pour associer le click à la procédure .
Oui mais d apres l explication, la titre de la procedure se creer toute seule.
Mais on peut toujours ecrire les procedure-evenement a la main, c est sur
wi j'ai compris
mai moi j'ai pas une application winform
c'est un composant
dans ma classe de gestion j'ai 4 boutons
alors moi je veux savoir quand l'utilisateur click sur un boutton pour que la fonction retourn une valeur
c tout
et si tu simules ce que te donnes le concepteur, ça ne marche pas non plus ?
Un truc comme :
Ou sinon essaie d'utiliser AddHandler. Je crois que tu dois fournir l'adresse de la fonction et l'evenement (Je crois)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 public sub clicBouton (sender e, eventargs blabla) handles TonNomBouton.click 'Ton code End sub
ça marche pas car je suis deja au millieu d'une focntion que j'ai nomé afficher
moi je veux : comment savoir si l'utilisateur click sur un boutton
j'ai lu a propos de handle mais j'ai pas vraiment compris
Voici un tutoriel sur le sujet:
http://plasserre.developpez.com/v8-3.htm
MErci je vai essayer
mai ca a pas marche voila mon code de fonction
coila avant cette Return "boutton1"
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64 Public Class iMessage Function afficher(ByVal stitre As String, ByVal smessage As String, ByVal sicon As String, ByVal botton1 As String, ByVal botton2 As String, ByVal botton3 As String, ByVal botton4 As String) As String Me.lbltitre.Text = stitre.ToString Me.lblmessage.Text = smessage.ToString '----------debut Affichage icone Select Case sicon Case "aide" Me.imgicon.Image = My.Resources.Resource1.aide Case "cle" Me.imgicon.Image = My.Resources.Resource1.cle Case "erreur" Me.imgicon.Image = My.Resources.Resource1.erreur Case "exclamation" Me.imgicon.Image = My.Resources.Resource1.exclamation Case "imprimante" Me.imgicon.Image = My.Resources.Resource1.imprimante Case "information" Me.imgicon.Image = My.Resources.Resource1.information Case "reglages" Me.imgicon.Image = My.Resources.Resource1.preferences_system Case "protection" Me.imgicon.Image = My.Resources.Resource1.protege Case "scanner" Me.imgicon.Image = My.Resources.Resource1.scanner Case "stop" Me.imgicon.Image = My.Resources.Resource1.stopper Case "succes" Me.imgicon.Image = My.Resources.Resource1.succes End Select '----------fin affichage icone '----------debut affichage bottons If botton1 = Nothing Then Me.bt1.Visible = False Else Me.bt1.Text = botton1.ToString End If If botton2 = Nothing Then Me.bt2.Visible = False Else Me.bt2.Text = botton2.ToString End If If botton3 = Nothing Then Me.bt3.Visible = False Else Me.bt3.Text = botton3.ToString End If If botton4 = Nothing Then Me.bt4.Visible = False Else Me.bt4.Text = botton4.ToString End If '----------fin affichage botton Return "boutton1" End Function
je veux tester une chose comme :
c toutsi boutton1 est clické alors
retourner "boutton1"
fin si
si boutton2 est cliqké alors
retourner "boutton2"
fin si
si quelquin peut m'aider dans ce petit probleme ca serait cool
Comment vas-tu faire pour cliquer le bouton exactement à ce moment? Ya rien dans ton code qui va attendre qu'un bouton soit cliqué, donc ça va passer par dessus. C'est dans le domaine du "quasi-improbable".
Et cette fonction elle est appellée dans quel contexte?
Et surtout pourquoi tu suis pas le conseil donnée plus haut et de mettre ton code dans le handle des boutons qui appellerait cette fonction "affiché", en transférant une variable qui dit quelle bouton à été cliqué...
De plus, à moins que je me trompes, il me semble bien que tu peux pas faire plus d'un "RETURN" dans une fonction, il faudra que tu enregistres ta variable de retour et que tu retournes celle si:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 dim retour as string = "" si boutton1 est clické alors retour = "boutton1" fin si si boutton2 est cliqké alors retour = "boutton2" fin si Return retour
oui c'est vrai Faladin Mais moi je veux comment savoir si le boutton est clické pour que je puisse retourner une valeur pour cette fonction
t'as compris maintenant ?
ok
ecoute moi j'ai un controle d'utilisateur qui a 4 bouttons en interface
je veux savoir (depuis ma fonction afficher) le boutton que l'utilisateur a cliqué et a partir de cet info la fonction va retourner une valeur precise par exemple
quand il click sur le boutton1 elle va retourner "boutton1"
SVP j'ai vraiment besoin de votre aide
Faladin, ta conception n'est pas logique : Tu ne peux pas savoir si un bouton a été cliqué si cette fonction n'est pas associée à l'evenement du clic.
Ce que tu pourrais faire, c'est savoir quel est le dernier bouton cliké : Dans ce cas declare au niveau du form un string et 4 fonctions Bouton1_click, ... chacune associée à l'evement clic d'un bouton.
Chaque pourrait etre de la forme
Et dans ta fonction afficher, recupere la valeur de Me.BoutonClike.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 Private Sub Bouton1_click(blablabla) handles Bouton1.click Me.BoutonClike = "Bouton1" End Sub
Enfin, voila une belle usine à gaz. Pour moi, le mieux serait de remettre en cause la conception de ton code ...
Eeee ça jamais été mon code...c'est la conception de le_fun!!
Et je sais que c'est pas logique
C'est ce que je disais, j'ai peut-être pas été assez clair: Tu ne peux pas savoir si un bouton a été cliqué si cette fonction n'est pas associée à l'evenement du clic.
Ce que tu pourrais faire, c'est savoir quel est le dernier bouton cliké : Dans ce cas declare au niveau du form un string et 4 fonctions Bouton1_click, ... chacune associée à l'evement clic d'un bouton.
Chaque pourrait etre de la forme
Et dans ta fonction afficher, recupere la valeur de Me.BoutonClike.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 Private Sub Bouton1_click(blablabla) handles Bouton1.click Me.BoutonClike = "Bouton1" End Sub
Enfin, voila une belle usine à gaz. Pour moi, le mieux serait de remettre en cause la conception de ton code ...
Faladin
le probleme que vous avez pas compris le probleme
je veux un code que je peux inserer dans la fonction afficher qui me permetra de savoir quel boutton est clické
sinon il faut ajouter cette addhandler
mais elle marche pas car elle requis un sub et pas une fonction
je veux associer l'evenement du Click avec la fonction
et en plus je peux pas declarrer une fonction pour chaque boutton
Personne ?
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager