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

cs_fabiano13 Messages postés 262 Date d'inscription mardi 26 février 2002 Statut Membre Dernière intervention 27 février 2012 - 15 sept. 2011 à 16:24
 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

6 réponses

cs_Jack Messages postés 14007 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 78
15 sept. 2011 à 16:44
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)
0
cs_fabiano13 Messages postés 262 Date d'inscription mardi 26 février 2002 Statut Membre Dernière intervention 27 février 2012
15 sept. 2011 à 21:04
Merci. Visiblement aucune des 2 propositions ne marchent !

Je vais abandonner cette idée.

Encore merci pour ton aide.
Fabiano
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 228
15 sept. 2011 à 21:50
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
0
Utilisateur anonyme
16 sept. 2011 à 00:45
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.
0

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

Posez votre question
us_30 Messages postés 2065 Date d'inscription lundi 11 avril 2005 Statut Membre Dernière intervention 14 mars 2016 10
16 sept. 2011 à 16:02
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.
0
Utilisateur anonyme
16 sept. 2011 à 21:34
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.
0