DBugs
Messages postés10Date d'inscriptionmercredi 8 août 2007StatutMembreDernière intervention21 janvier 2008
-
22 nov. 2007 à 19:43
DBugs
Messages postés10Date d'inscriptionmercredi 8 août 2007StatutMembreDernière intervention21 janvier 2008
-
22 nov. 2007 à 22:13
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?
DBugs
Messages postés10Date d'inscriptionmercredi 8 août 2007StatutMembreDernière intervention21 janvier 2008 22 nov. 2007 à 20:33
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?)
Vous n’avez pas trouvé la réponse que vous recherchez ?
DBugs
Messages postés10Date d'inscriptionmercredi 8 août 2007StatutMembreDernière intervention21 janvier 2008 22 nov. 2007 à 20:42
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.
Nikoui
Messages postés794Date d'inscriptionvendredi 24 septembre 2004StatutMembreDernière intervention19 août 200813 22 nov. 2007 à 20:48
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);
}
}
<hr size="2" width="100%" />
Working as designed
www.nikoui.fr
DBugs
Messages postés10Date d'inscriptionmercredi 8 août 2007StatutMembreDernière intervention21 janvier 2008 22 nov. 2007 à 22:13
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.