Passage d'un textbox à l'autre en pressant ENTER

Résolu
PhoeniXX52 Messages postés 38 Date d'inscription mercredi 22 janvier 2003 Statut Membre Dernière intervention 8 mars 2006 - 15 juin 2005 à 23:12
PhoeniXX52 Messages postés 38 Date d'inscription mercredi 22 janvier 2003 Statut Membre Dernière intervention 8 mars 2006 - 16 juin 2005 à 11:54
Bonjour,



J'ai donc une applic qui gère des clients, dans cette form se trouve
plusieurs textbox. J'aimerais pour la rendre un peu plus "friendly
user" que lorsque l'on presse enter, il passe au textbox suivant (TAB
ne suffit pas).

Pour ce faire je gère donc l'evenement Keypress pour tout les texbox, j'appel qu'une seule fonction. texbox_Keypress (... )

Dans cette fonction je test si c'est bien Enter qui est pressé:

if ((int)e.KeyChar == 13)


{


TextBox t = (TextBox)sender;

TabControl tc = new TabControl();

}

Si c'est le cas, je ne sais pas quoi faire ... J'ai essayé des trucs du
genre TabIndex, SelectIndex ... mais ca ne marche pas !!! QUE FAIRE ???



J'aimerais éviter de faire textBoxX.Focus();



Merci à vous ... Sur ce une bonne nuit ...




Simon.

Pourvu que ca dure ...

6 réponses

cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
15 juin 2005 à 23:51
Salut,

Par exemple tu peux associer l'event KeyUp de chaque TextBox à la même méhode (dans le Designer tu selectionnes tout les TB avant de choisir l'event par exemple) et dans celle ci tu peux faire quelque chose de ce genre :


private void textBox2_KeyUp(object sender, System.Windows.Forms.KeyEventArgs e)
{
if ( e.KeyCode == Keys.Enter )
this.SelectNextControl((Control)sender, true, true, false, false);
}

Cocoricoooooooo !!!!
coq
MVP Visual C#
3
PhoeniXX52 Messages postés 38 Date d'inscription mercredi 22 janvier 2003 Statut Membre Dernière intervention 8 mars 2006
15 juin 2005 à 23:17
PS: Mes index sont dans l'ordre mais pas les numéro de textbox.



"J'aimerais éviter de faire textBoxX.Focus();" ==> x est le numéro du textBox

Simon.

Pourvu que ca dure ...
0
PhoeniXX52 Messages postés 38 Date d'inscription mercredi 22 janvier 2003 Statut Membre Dernière intervention 8 mars 2006
16 juin 2005 à 08:38
Merci de répondre ...

j'ai essayé la méthode SelectNextControl mais ca fonctionne pas, fin
si! mais le prob c'est qu'au lieu de passer au textBox suivant, il
passe sur un bouton.

Simon.

Pourvu que ca dure ...
0
PhoeniXX52 Messages postés 38 Date d'inscription mercredi 22 janvier 2003 Statut Membre Dernière intervention 8 mars 2006
16 juin 2005 à 09:26
Donc lorsque je fais enter celà ne fonctionne pas, par contre avec tab
je passe bien dans l'ordre souhaité d'un textbox à l'autre.

Ce que je pourrais faire:



private void textBox_KeyUp(object sender, System.Windows.Forms.KeyEventArgs e)

{

if ( e.KeyCode == Keys.Enter )

//dire au programme de faire comme si j'enfonçais la touche tab Keys.Tab

}


Simon.

Pourvu que ca dure ...
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
PhoeniXX52 Messages postés 38 Date d'inscription mercredi 22 janvier 2003 Statut Membre Dernière intervention 8 mars 2006
16 juin 2005 à 11:54
Merci beaucoup ... à tous les deux !!!

Simon.

Pourvu que ca dure ...
0
cs_RMI Messages postés 305 Date d'inscription vendredi 18 juillet 2003 Statut Membre Dernière intervention 2 août 2010 2
16 juin 2005 à 11:38
private void textBox2_KeyUp(object sender, System.Windows.Forms.KeyEventArgs e)
{
if ( e.KeyCode == Keys.Enter )
//dire au programme de faire comme si j'enfonçais la touche tab Keys.Tab

SendKeys.Send("{TAB}");

}




et le tour est joué

Théo
-1
Rejoignez-nous