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

C# Discussion :

(Débutant) Récupéré le control choisie avec la souris


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Novembre 2006
    Messages
    100
    Détails du profil
    Informations personnelles :
    Localisation : France, Territoire de Belfort (Franche Comté)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2006
    Messages : 100
    Par défaut (Débutant) Récupéré le control choisie avec la souris
    je veux récupérer "le nom" du control sur lequel j'ai cliqué avec le bouton de la souris, par exemple si je click sur le button1 ou bien button2 ou bien listbox1, il me donne son nom.
    Merci d'avance

  2. #2
    Membre Expert Avatar de bossun
    Profil pro
    Inscrit en
    Novembre 2002
    Messages
    1 359
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2002
    Messages : 1 359
    Par défaut
    execute une methode sur l'evenement click de chaque bouton...
    après tu cast le sender en button et tu as ce que tu cherches



    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    protected void Click(object sender,eventargs e)
    {
    Button b1 = sender as Button;
    Messagbox.Show(b1.Text);
    }
    amuse toi bien avec ça

  3. #3
    Membre émérite
    Avatar de neilbgr
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Août 2004
    Messages
    651
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2004
    Messages : 651
    Par défaut
    bossun, ça ne fonctionnera pas complétement pour la question posée. (De plus, c'est le nom qui est demandé, pas l'éventuel texte)
    Il faut savoir que tous les contrôles d'une form sont, Lapalisse n'aurait pas mieux dit, des Control. Donc, il vaut mieux caster avec Control :
    Code c# : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    protected void Click(object sender,eventargs e)
    {
    	Control ctrl = sender as Control;
    	if (ctrl != null)
    		Messagbox.Show(ctrl.Name);
    }

  4. #4
    Membre Expert Avatar de bossun
    Profil pro
    Inscrit en
    Novembre 2002
    Messages
    1 359
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2002
    Messages : 1 359
    Par défaut
    oui effectivement ça repond plus à la question qui a été posée mais

    bon il dit

    par exemple si je click sur le button1 ou bien button2 ou bien listbox1, il me donne son nom.

  5. #5
    Expert confirmé
    Avatar de ced600
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Août 2006
    Messages
    3 364
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Août 2006
    Messages : 3 364
    Par défaut
    Citation Envoyé par Zikas-r Voir le message
    je veux récupérer "le nom" du control sur lequel j'ai cliqué avec le bouton de la souris, par exemple si je click sur le button1 ou bien button2 ou bien listbox1, il me donne son nom.
    Merci d'avance
    Heu je ne comprends pas trop, sur chaque controles qui doivent faire cela tu rajoutes une réaction à l'événement clique souris, et comme tu sais où tu es tu renvois le nom du control.

    Pouquoi s'embêter à caster le sender en control ou autre ?

  6. #6
    Membre Expert Avatar de bossun
    Profil pro
    Inscrit en
    Novembre 2002
    Messages
    1 359
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2002
    Messages : 1 359
    Par défaut
    Citation Envoyé par ced600 Voir le message
    Pouquoi s'embêter à caster le sender en control ou autre ?
    Comme ca tu as une seule methode que tu abonnes à l'evenemet click des boutons que tu veux.

  7. #7
    Expert confirmé
    Avatar de ced600
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Août 2006
    Messages
    3 364
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Août 2006
    Messages : 3 364
    Par défaut
    Mouais, je ne dirais rien qu'en à la mutualisation du code, c'est une bonne chose.

    Je ne développe pas beaucoup d'IHM, mais lorsque j'en fait, tous mes boutons, listbox, combobox, ... réagissent à l'évenement clique déjà et je trouve cela plus pratique de mettre cette ligne de code dans chacune des fonctions.

    En plus c plus simple si tu ne vas pas fiare l'action pour tout tes controles.

    Car si tu abonnes la fonction à l'évenement clique elle s'exécutera à chaque clique

    Alors que si tu met le code (ou un appel à une fonction) dans les diffs fonctions des controles réagissant à l'événement clique, cela ne se fait qu'en cas de clique sur le controle.

  8. #8
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Novembre 2006
    Messages
    100
    Détails du profil
    Informations personnelles :
    Localisation : France, Territoire de Belfort (Franche Comté)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2006
    Messages : 100
    Par défaut
    Merci pr vosr reponse je crois que j'ai pas bien m'expliquer "ptt problème de langue " voila ce que j'ai fait :
    j'ai declaré un objet
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    static Button lt = new Button();
    puis dans chaque control :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
            private void button1_MouseDown(object sender, System.Windows.Forms.MouseEventArgs e)
            {
                lt = button1;
                DoDragDrop(lt, DragDropEffects.Move);
            }
     
            private void button2_MouseDown(object sender, System.Windows.Forms.MouseEventArgs e)
            {
                lt = button2;
                DoDragDrop(lt, DragDropEffects.Move);
            }
    et je récupère mon objet pour le glisser :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    private void panel1_DragDrop(object sender, System.Windows.Forms.DragEventArgs e)
            {
                lt.SetBounds(this.posx, this.posy, lt.Width, lt.Height);
            }
    je veux à la place de mettre lt = buttonX ; ou bien lt = Control; "en générale" je veux récupérer automatiquement au niveau de panel1_DragDrop l'objet sur lequel je clique et aplliquer ma methode

  9. #9
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Novembre 2006
    Messages
    100
    Détails du profil
    Informations personnelles :
    Localisation : France, Territoire de Belfort (Franche Comté)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2006
    Messages : 100
    Par défaut
    ça devient impratique qu'on j'aurai bcp de control diffrent ou bien si je veux ajouter des usercontrol !!

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

Discussions similaires

  1. Réponses: 4
    Dernier message: 17/03/2009, 09h37
  2. [VB6]Redimensionner un controle avec la souris???
    Par Goldenkiller dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 12/03/2006, 19h52
  3. [VS2005][C#] Déplacer control avec la souris!
    Par pocket dans le forum Windows Forms
    Réponses: 3
    Dernier message: 02/03/2006, 20h34
  4. Deplacement d'un controle avec la souris
    Par hepsilonz dans le forum MFC
    Réponses: 6
    Dernier message: 23/12/2005, 15h42
  5. [Débutant] génération d'un EJB avec GenIc
    Par Stessy dans le forum JOnAS
    Réponses: 65
    Dernier message: 31/01/2005, 10h50

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