Peut-on déclencher un événement à partir d'un autre bouton ?

Messages postés
262
Date d'inscription
mardi 26 février 2002
Statut
Membre
Dernière intervention
27 février 2012
- - Dernière réponse :  Utilisateur anonyme - 16 sept. 2011 à 21:34
Bonjour,

Peut-on déclencher un événement à partir d'un autre bouton ?

Ceci ne marche pas !


    Private Sub Action2_SelectedColorChanged(ByVal sender As System.Object, ByVal e As ColorChangedEventArgs) Handles Action2.SelectedColor
        msgbox("Victoire !!!!")
    End Sub

    Private Sub Action1_click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Action1.click
        AddHandler Action2.SelectedColor, AddressOf ScreenColorPicker1_SelectedColorChanged
    End Sub

Afficher la suite 

6 réponses

Messages postés
14008
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
61
0
Merci
Salut

Vu la syntaxe de Action2_SelectedColorChanged, je dirais que l'objet s'appelle Action2 et l'event SelectedColorChanged, donc la syntaxe du Handles devrait être
Handles Action1.click, Action2.SelectedColorChanged
à condition que ces deux events, Action1.click et Action2.SelectedColorChanged, aient les mêmes paramètres !
A tester

Un Call Action1_Click ne suffirait-il pas ?

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
Commenter la réponse de cs_Jack
Messages postés
262
Date d'inscription
mardi 26 février 2002
Statut
Membre
Dernière intervention
27 février 2012
0
Merci
Merci. Visiblement aucune des 2 propositions ne marchent !

Je vais abandonner cette idée.

Encore merci pour ton aide.
Fabiano
Commenter la réponse de cs_fabiano13
Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
212
0
Merci
Bonjour,
Merci. Visiblement aucune des 2 propositions ne marchent !

Il est vrai que s'il existe un évènement que l'on ne peut provoquer, c'est bien celui qui constate une changement effectif !
Et appeler à lancer un évènement qui ne constate pas l'évènement, ma foi ...
Si tu tiens vraiment (mais ce serait assez curieux en soi) à exécuter des instructions se trouvant dans l'évènement Change ===>> mets donc ces instructions dans une procédure séparée et :
- dans l'évènement Change : appelle cette procédure
- depuis ailleurs : lance directement la procédure !
Maois ne tiens aucun compte de ce que j'exprime là ! Je suis un vieux crouton et un fou, moi

____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
Commenter la réponse de ucfoutu
0
Merci
Bonsoir,
On peut très bien écrire ceci :

Private Sub Action2_SelectedColorChanged(ByVal sender As System.Object, ByVal e As ColorChangedEventArgs) Handles Action2.SelectedColor
    msgbox("Victoire !!!!")
End Sub

Private Sub Action1_click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Action1.click
    Action2_SelectedColorChanged(Action1, Nothing)
    'ou alors si tu veux construire l'événement ColorChangedEventArgs valide:
    'Action2_SelectedColorChanged(Action1, New ColorChangedEventArgs(parametres,...))
End Sub


Bonne prog.
Commenter la réponse de Utilisateur anonyme
Messages postés
2117
Date d'inscription
lundi 11 avril 2005
Statut
Membre
Dernière intervention
14 mars 2016
7
0
Merci
Bonjour,

Soit la question est mal posée, soit je ne la comprend pas...

Voici un exemple élémentaire d'appelle ! Mettre 2 boutons...

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        MessageBox.Show("bouton 1 click")
    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


Bref, je pense que jack dit juste. En réalité, "Private Sub Button1_Click..." est un SUB simplement. Elle est donc appelable comme toutes les SUB. Les " Handles " définissent en plus que les événements utilisateurs qui peuvent la déclencher automatiquement.

Où est le problème ? (la difficulté ?)

Amicalement,
Us.
Commenter la réponse de us_30
0
Merci
Bonsoir us_30
Les arguments attendus ne sont pas les mêmes. (eventargs et colorchangedeventargs)
Il faut dont créer cet argument. Ou, s'il n'est pas utile, passer Nothing.
De plus sender n'est pas utilisable en tant que tel lorsque Option Strict est à On.
Bonne soirée.
Commenter la réponse de Utilisateur anonyme