IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Windows Forms Discussion :

[VB.NET]Comment gérer plusieurs boutons en 1 méthode Click ?


Sujet :

Windows Forms

  1. #1
    Futur Membre du Club
    Inscrit en
    Février 2006
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 8
    Points : 7
    Points
    7
    Par défaut [VB.NET]Comment gérer plusieurs boutons en 1 méthode Click ?
    Bonjour, j'aimerai savoir s'il est possible d'enclencher un même algorithme lorsque l'utilisateur clique sur n'importe quel bouton de mon form

    En fait je cherche à éviter d'avoir :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    Private Sub Button00_Click ...
    Private Sub Button01_Click ...
    Private Sub Button02_Click ...
    Private Sub Button03_Click ...
    ... etc...
    Avec les mêmes lignes de codes dans chaques procédures.
    Merci d'avance pour votre aide

  2. #2
    Expert éminent
    Avatar de neguib
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 627
    Détails du profil
    Informations personnelles :
    Âge : 63
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 627
    Points : 7 879
    Points
    7 879
    Par défaut
    Bon apparemment tu n'as pas encore reçu la reponse que tu aurais d'ailleurs pu trouver facilment avec une petite recherche avancé sur les forum .Net
    Il suffit d'abonner chacun des Click de chacun de tes Button à une seule et même méthode du moment que celle-ci corresponde à la signature normale du Delegate de Click
    Par exemple dans InitializeComponent()
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    'Bouton0
    '...
    AddHandler Bouton0.Click, AddressOf MesBoutonsClick
    '...
    'Bouton1
    '...
    AddHandler Bouton1.Click, AddressOf MesBoutonsClick
    '...etc...
    Puis la méthode en question
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    Private Sub MesBoutonsClick(ByVal sender As Object,ByVal  e As EventArgs)
       '...ici tu peux très bien si necessaire
       '... distinguer quel bouton est concerné
       '...en manipulant CType(sender, Button)
       '...pour le code à executer
    End Sub
    Pour le bien de ceux qui vous lisent, ayez à coeur le respect du forum et de ses règles

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    487
    Détails du profil
    Informations personnelles :
    Âge : 55
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations forums :
    Inscription : Juillet 2002
    Messages : 487
    Points : 621
    Points
    621
    Par défaut
    Pour ajouter une précision à l'excellente réponse de neguib, il suffit de sélectionner tous les boutons dans le designer puis d'affecter un handler d'événement avec l'éditeur de propriété.

    L'opération est exactement la même avec un bouton qu'avec plusieurs.
    On ne peut pas faire boire un âne qui n'a pas soif.

  4. #4
    Expert éminent
    Avatar de neguib
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 627
    Détails du profil
    Informations personnelles :
    Âge : 63
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 627
    Points : 7 879
    Points
    7 879
    Par défaut
    Citation Envoyé par NicolasG
    Pour ajouter une précision à l'excellente réponse de neguib, il suffit de sélectionner tous les boutons dans le designer puis d'affecter un handler d'événement avec l'éditeur de propriété.

    L'opération est exactement la même avec un bouton qu'avec plusieurs.
    +1 effectivement
    D'ailleurs la conséquence dans le code généré en VB.Net sera un abonnement groupé directement sous cette forme

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    Private Sub MesBoutonsClick(ByVal sender As System.Object, ByVal  e As System.EventArgs) Handles Bouton0.Click, Bouton1.Click, Bouton2.Click '...etc
       '...
    End Sub
    Pour le bien de ceux qui vous lisent, ayez à coeur le respect du forum et de ses règles

  5. #5
    Futur Membre du Club
    Inscrit en
    Février 2006
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 8
    Points : 7
    Points
    7
    Par défaut
    Merci pour vos réponses, j'ai réussi à économiser beaucoup de place dans mon code.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 1
    Dernier message: 06/03/2007, 20h29
  2. [VB.NET] Comment gérer une DLL Delphi ?
    Par slimjoe dans le forum VB.NET
    Réponses: 2
    Dernier message: 09/01/2006, 00h10
  3. Réponses: 5
    Dernier message: 29/10/2004, 16h20
  4. Comment gérer plusieurs langues ?
    Par InterSQL dans le forum MS SQL Server
    Réponses: 6
    Dernier message: 27/02/2004, 16h12
  5. Comment gérer plusieurs icones dans son exécutable ?
    Par declencher dans le forum Langage
    Réponses: 5
    Dernier message: 15/10/2003, 10h49

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo