ValueChanged event du numericupdown [Résolu]

cs_ShayW 3238 Messages postés jeudi 26 novembre 2009Date d'inscription 14 mars 2018 Dernière intervention - 14 févr. 2018 à 19:54 - Dernière réponse : cs_ShayW 3238 Messages postés jeudi 26 novembre 2009Date d'inscription 14 mars 2018 Dernière intervention
- 15 févr. 2018 à 19:39
Bonjour,
J'utilise le numericupdown en implémentant 3 évenements
 Private Sub Numericangles_KeyUp(sender As Object, e As System.Windows.Forms.KeyEventArgs) Handles Numericangles.KeyUp
code a
End Sub

Private Sub Numericangles_MouseUp(sender As Object, e As System.Windows.Forms.MouseEventArgs) Handles Numericangles.MouseUp
code a
End Sub

Private Sub Numericangles_ValueChanged(sender As Object, e As System.EventArgs) Handles Numericangles.ValueChanged
code a
End Sub


quand je lance et clique les flèches du numeric le ValueChanged est declenché la pas de problème.
Si je tape une valeur dans le textbox le keyup et déclenché mais ensuite le ValueChanged est declenché aussi
cela cause "code a" est appelé deux fois .
La meme chose avec le mouseup si je fais un copiercoller.
Si il y a une astuce merci d'avance
Afficher la suite 

Votre réponse

4 réponses

Whismeril 11541 Messages postés mardi 11 mars 2003Date d'inscriptionContributeurStatut 22 mai 2018 Dernière intervention - 14 févr. 2018 à 20:14
0
Utile
Bonsoir
Une question bête, si valueChanged est déclenché à chaque fois, pourquoi utiliser les 2 autres?

Sinon, je me permets de te rappeler le lien vers la procédure pour la coloration syntaxique http://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code
Regarde
Private Sub Numericangles_KeyUp(sender As Object, e As System.Windows.Forms.KeyEventArgs) Handles Numericangles.KeyUp
        code a
    End Sub

    Private Sub Numericangles_MouseUp(sender As Object, e As System.Windows.Forms.MouseEventArgs) Handles Numericangles.MouseUp
        code  a
    End Sub

    Private Sub Numericangles_ValueChanged(sender As Object, e As System.EventArgs) Handles Numericangles.ValueChanged
        code a
    End Sub

C’est mieux non?
Commenter la réponse de Whismeril
cs_ShayW 3238 Messages postés jeudi 26 novembre 2009Date d'inscription 14 mars 2018 Dernière intervention - 14 févr. 2018 à 21:04
0
Utile
Bonsoir
J'ai testé aussi seulement avec le valueChanged en mettant un point d'arret
Si je tape une valeur rien ne se passe (pour cette raison j'utilise le KeyUp )

j'avais bien utilisé la coloration syntaxique ferai attention la prochaine fois
Commenter la réponse de cs_ShayW
Whismeril 11541 Messages postés mardi 11 mars 2003Date d'inscriptionContributeurStatut 22 mai 2018 Dernière intervention - 15 févr. 2018 à 07:40
0
Utile
d’accord dans ce cas, je pense que la solution est d’utiliser une variable

Dim dejaFait as Boolean = False

Private Sub Numericangles_KeyUp(sender As Object, e As System.Windows.Forms.KeyEventArgs) Handles Numericangles.KeyUp
        code a
        dejaFait = True
    End Sub

    Private Sub Numericangles_MouseUp(sender As Object, e As System.Windows.Forms.MouseEventArgs) Handles Numericangles.MouseUp
        code  a
        dejaFait = True
    End Sub

    Private Sub Numericangles_ValueChanged(sender As Object, e As System.EventArgs) Handles Numericangles.ValueChanged
        If dejaFait = False Then
             code a
        End if
        dejaFait = false
    End Sub
cs_ShayW 3238 Messages postés jeudi 26 novembre 2009Date d'inscription 14 mars 2018 Dernière intervention - 15 févr. 2018 à 19:39
Merci
En suivant pas à pas avec le debugger
je tape un chiffre Numericangles_KeyUp est declenché
si codea est une sub le debugger ne va pas executer codea mais le Numericangles_ValueChanged est declenché et ensuite codea du Numericangles_KeyUp est executé donc il faut placer le dejafait du Numericangles_KeyUp en premiere ligne
Commenter la réponse de Whismeril

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.