begin process at 2010 02 10 07:50:52
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C#

 > 

Windows

 > 

Formulaire / Winforms / Controls

 > 

Récupérer le contrôle possèdant le focus


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Récupérer le contrôle possèdant le focus

jeudi 22 novembre 2007 à 19:43:10 | Récupérer le contrôle possèdant le focus

DBugs

Salut à tous, Cela fait trois jour que je cherche sans trouver alors je vais simplement poser la question. J'ai plusieurs "button" regroupés dans un "groupBox", tous ces boutons vont la même chose à leur valeur respective près (par exemple que je clic sur 2 ou que je clique sur 5 le logiciel va ajouter 2 ou 5 (selon le cas) à une variable) je veux donc éviter de rentrer 36 le même le code sur les différents boutons, j'ai trouvé un début de solution : je met le code dans le groupBox_Enter, ainsi je peux cliquer sur n'importe quel bouton le code s'exectura (du moins seulement la première fois car une fois rentrer on ne rentre plus mais ça c'est un autre problème) mon problème c'est que je ne trouve rien pour récupéré le contrôle sur lequel j'ai cliqué, pour récupérer la bonne valeur (2 ou 5). En faite j'ai réussi en cherchant parmis tous les boutons (avec un foreach) celui qui avait le focus mais ça me plait pas vraiment. Je cherche en quelque sorte à récupéré le contrôle qui a le focus sans avoir à parcourir tous les contrôles mais est-ce possible? si oui comment? Merci d'avance pour les réponses. Petit étudiant, grand débutant.
jeudi 22 novembre 2007 à 20:09:05 | Re : Récupérer le contrôle possèdant le focus

MorpionMx

Membre Club Administrateur CodeS-SourceS
Salut,

Le parametre sender de ton evenement te permet de savoir quel Control a executé l'evenement.
Il te suffit de le caster en button :



Button btn = sender as Button
if(btn != null)
{
   // Ton code
}

Mx
MVP C#
 

jeudi 22 novembre 2007 à 20:19:10 | Re : Récupérer le contrôle possèdant le focus

DBugs

Pas bête mais je viens d'essayer et ça marche pas car l'objet sender et mon groupBox dans le quel j'entre et pas le button sur lequel je clique :(
jeudi 22 novembre 2007 à 20:25:56 | Re : Récupérer le contrôle possèdant le focus

MorpionMx

Membre Club Administrateur CodeS-SourceS
Inscris toi a l'évenement click de tes boutons, mais en indiquant toujours la meme méthode :)

Mx
MVP C#
 

jeudi 22 novembre 2007 à 20:33:34 | Re : Récupérer le contrôle possèdant le focus

DBugs

tu veux dire crée une méthode/fonction que je place dans tous mes buttonI_click? je voudrais justement éviter de devoir mettre du code dans tous les buttons click. Il n'y vraiment pas un truc tous fait qui permet de récupérer l'objet qui a le focus?, c'est bizard ça voudrait dire que le logiciel lui même ne sais pas où le focus alors qu'en faisant tab il passe on contrôle suivant ce qui sous entend qu'il sait où il est (ensuite il regarde le tabset et passe au suivant jepense non?)
jeudi 22 novembre 2007 à 20:39:20 | Re : Récupérer le contrôle possèdant le focus

MorpionMx

Membre Club Administrateur CodeS-SourceS
Tu peux tout a fait reutiliser la meme méthode pour chaque evenement click !
Pas besoin de reecrire la meme méthode pour chaque bouton

Mx
MVP C#
 

jeudi 22 novembre 2007 à 20:42:25 | Re : Récupérer le contrôle possèdant le focus

DBugs

oui mais ce que je voulais dire c'est que ça m'oblige à appeler cette méthode dans chaque évènement clic et je veux éviter de "déclarer" ces évènements.
jeudi 22 novembre 2007 à 20:48:28 | Re : Récupérer le contrôle possèdant le focus

Nikoui

Je suis assez d'accord avec MorpionMx, c'est la solution la plus propre.

Au pire si tu as vraiment la flemme de le faire, tu peux le faire par code. Un bout de code "improvisé" (non testé):

foreach(Control control in myGroupBox.Controls)
{
    Button button = control as Button;
    if(button != null)
    {
       button.Cliked += new EventHandler(maMethode);
    }
}


Working as designed
www.nikoui.fr
jeudi 22 novembre 2007 à 22:13:37 | Re : Récupérer le contrôle possèdant le focus

DBugs

Intéressant, je note. (Si j'ai bien compris je met ça dans le load de form) Mais ça correspond pas à ce que je cherche à croire que ça n'existe pas (et ça m'étonne grandement), je pense revenir à ma première solution voir celle que vous me proposer mais du coup mais groupBox devient inutile. En tout cas je vous remercie pour toute l'attention que vous portez à mon souci. Et si quelqu'un à une solution pour grouper en un seul code/event les events de plusieurs boutons (genre un buttons_click qui afficherais le text du bouton cliqué) je suis toujours à l'écoute.


Cette discussion est classée dans : boutons, récupérer, code, contrôle, focus


Répondre à ce message

Sujets en rapport avec ce message

générer un contrôle ( bouton) dynamique en c# [ par poelvo ] Je voudrais créer des boutons à partir d'une liste d'objet d'une base de données, je n'aurai donc jamais le même nombre de boutons. Je ne sais donc pa 90 boutons : comment optimiser le code ? [ par zigxag ] Bonjour !Je dois mettre en place une sorte de planning, dans lequel chaque case (les plages horaires par jour) doit pouvoir changer de couleur lors d' Police caractère [ par matp87 ] Salut, Voila, j'ai besoin de récupérer le nom postscript de chaque caractère d'une police. Par exemple pour le caractère '+', le code est '$002B' mais récupérer le code HTML résultant de l'écriture dans un contrôle FreeTextBox suite à un click sur un bouton [ par mohamed_bn ] med belhassenj'ai implémenté un controle Freetext box (version 3.1) dans ma page webForm. Mais je n'ai pas pu récupérer le code html résultant dans l' Récupérer code html page web [ par moihenry ] Bonjour, quelle est le moyen le plus rapide pour récupérer le code html d'une page web ? MerciC# top!! récupérer des sous-chaines dans un code html [ par zarzar ] bonsoirvoici le problème auquel je suis confrontéj'aimerais etre capable d'aller chercher dans un code source html (peut importe en fait que ça soit d Acceder à des objets dont on ne connait pas le nom [ par brixi69 ] Bonjour !Je me permets de poster sur ce forum car j'ai quelques soucis étant débutant en C#Je dévellope une applic utilisant un tabcontrol. Je dois po Récupérer focus application [ par cybers7119 ] Salut, J'ai créé une application en C# qui ne peut pas être lancée deux fois en même temps (l'instance de l'appli est unique).Sauf que lorsque j'ess Récupérer la doc du code pendant l'exécution du programme [ par maitredede ] Bonjour,Je voudrais savoir si pendant l'exécution de mon programme il est possible de récupérer la doc d'une méthode, celle qu'on ajoute dans le code Récupérer le contenu d'un page web par code [ par craftyBTB ] Bonjour à tous,J'ai un petit souci pour récupérer par code l'ensemble des données  envoyé par le serveur à un navigateur internet. Je souhaite retrait


Nos sponsors


Sondage...

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,546 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales