Controle et focus [Résolu]

Signaler
Messages postés
346
Date d'inscription
lundi 8 septembre 2003
Statut
Membre
Dernière intervention
3 septembre 2007
-
cs_coq
Messages postés
6352
Date d'inscription
samedi 1 juin 2002
Statut
Modérateur
Dernière intervention
2 août 2014
-
Je dois implémenter le fait que la touche entrée ai le meme effet que la touche tab. Bon, pour l'interception de la touche entrée ok pas de probleme.
Par contre, j'aimerais faire un truc un peu générique, et j'aimerais passé la main au controle qui suit sans savoir qui il ai un instruction du genre this.FocusNextControl();

connaissez vous la fonction qui donne le prochain controle dans la liste?

7 réponses

Messages postés
305
Date d'inscription
vendredi 18 juillet 2003
Statut
Membre
Dernière intervention
2 août 2010

Si tu interceptes déjà la touche Entrée simule alors l'appuis de la touche TAB par SendKeys.Send("{TAB}") et le tour est joué

Théo
Messages postés
273
Date d'inscription
dimanche 5 octobre 2003
Statut
Membre
Dernière intervention
6 février 2009
1



Control ctl = c.GetNextControl(c, true);


"ctl" est le control suivant dans le tab order par rapport à "c"

<HR>
ZeBobo5
Messages postés
346
Date d'inscription
lundi 8 septembre 2003
Statut
Membre
Dernière intervention
3 septembre 2007
3
merci beaucoup à tous les deux,
j'ai pas testé ce qu'à donner zebobo, mais ca me semble marcher.
Le sendkey est exactement ce que je voulais, c'est à dire simuler l'appui sur tab,
merci beaucoup
a charge peut etre de revanche
Messages postés
6352
Date d'inscription
samedi 1 juin 2002
Statut
Modérateur
Dernière intervention
2 août 2014
79
Salut,

Personnellement, je préconiserais plutôt l'utilisation d'une solution du genre de celle de ZeBobo5, mais en utilisant directement la méthode SelectNextControl.
La méthode du SendKeys / TAB est dangereuse pour au moins une raison : elle ne fonctionnera pas si le contrôle ayant le focus est un TextBox (ou potentiellement tout autre contrôle dérivant de TextBoxBase) multiligne dont la propriété AcceptsTab est à true :-)

Cocoricoooooooo !!!!
coq
MVP Visual C#
Messages postés
346
Date d'inscription
lundi 8 septembre 2003
Statut
Membre
Dernière intervention
3 septembre 2007
3
Pas de problème dans mon appli ou je n'ai pas de textbox multiligne, et pour n'importe qu'elle controle, tab,et entrée ( sauf pour les boutons bien sur) ont la meme fonction, passé au controle suivant.

Je préfére le sendkey parce que j'ai un problème avec des combos box. Allez savoir pourquoi , lorsque je fais :

if( e.KeyCode == Keys.Enter )
ckbValid.focus();

cela plante, et avec le sendkey, ca fonctionne tres bien
Messages postés
305
Date d'inscription
vendredi 18 juillet 2003
Statut
Membre
Dernière intervention
2 août 2010

J'ai gagné !!!

Théo
Messages postés
6352
Date d'inscription
samedi 1 juin 2002
Statut
Modérateur
Dernière intervention
2 août 2014
79
Tu peux être plus précis sur l'erreur stp ?

Cocoricoooooooo !!!!
coq
MVP Visual C#