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

Windows Forms Discussion :

[C#] Comment détecter l'appui sur 'Entrée' ?


Sujet :

Windows Forms

  1. #1
    Membre extrêmement actif
    Avatar de ArHacKnIdE
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 947
    Détails du profil
    Informations personnelles :
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 947
    Points : 1 921
    Points
    1 921
    Par défaut [C#] Comment détecter l'appui sur 'Entrée' ?
    Bonjour à Tous,

    J'ai un textbox et j'aimerai lancer du code, quand ce textbox a le focus et lorsque l'on appuie sur 'Entrée'.

    Je n'ai pas réussi à trouver l'evenement qui lui correspond

    Je pense qu'il faut l'associer à l'évènement KeyPress du textbox, mais je ne sais pas comment préciser que ce soit la touche 'Entrée'

    Merci

  2. #2
    Expert éminent
    Avatar de StormimOn
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2005
    Messages
    2 593
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Sarthe (Pays de la Loire)

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

    Informations forums :
    Inscription : Mai 2005
    Messages : 2 593
    Points : 7 660
    Points
    7 660
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    private void textBox_KeyPress(object sender, KeyPressEventArgs e)
    {
        if (e.KeyChar == (char)Keys.Enter)
        {
            // traitement
        }
    }
    Pas de questions techniques par MP

  3. #3
    Membre extrêmement actif
    Avatar de ArHacKnIdE
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 947
    Détails du profil
    Informations personnelles :
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 947
    Points : 1 921
    Points
    1 921
    Par défaut
    Grand Merci

    Alors ça marche très bien mais il y a un petit problème, quand j'appui sur 'Entrer' sa lance bien mes evenements mais ça saute egalement une ligne dans mon textbox

    Comment remedier à ça ?

    En fait il faudrait que j'arrive à faire revenir le curseur au tout début du textbox.

    Merci

  4. #4
    Expert éminent
    Avatar de StormimOn
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2005
    Messages
    2 593
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Sarthe (Pays de la Loire)

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

    Informations forums :
    Inscription : Mai 2005
    Messages : 2 593
    Points : 7 660
    Points
    7 660
    Par défaut
    S'il y a un petit problème ce que ca ne marche pas très bien

    Il faut rajouter une petite ligne pour éviter effectivement la prise en compte de la touche entrée dans le texte, j'avais omis ce petit point.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    private void textBox_KeyPress(object sender, KeyPressEventArgs e)
    {    
        if (e.KeyChar == (char)Keys.Enter)
        {
            // On ne prend pas en compte la touche entrée 
            // comme caractère dans le texte
            e.Handled = true
            // traitement
            ...
        }
    }
    Pas de questions techniques par MP

  5. #5
    Membre extrêmement actif
    Avatar de ArHacKnIdE
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 947
    Détails du profil
    Informations personnelles :
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 947
    Points : 1 921
    Points
    1 921
    Par défaut
    Merci moi j'ai fait :

    SendKeys.Send("{BACKSPACE}");
    Mais c'est vrai que ta technique est plus pro

    Encore Merci

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    75
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Septembre 2004
    Messages : 75
    Points : 44
    Points
    44
    Par défaut
    Petite qestion pour approfondire.

    J'ai un textbox et un bouton, le bonton fait un traitement qui fonctionne. Maintenant pour les usager plus expérimenter je veux que si la personne tape enter après avoir saisie une donnée dans le textbox il exécute le traitement du bonton.

    Donc dans le :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    private void textBox_KeyPress(object sender, KeyPressEventArgs e)
    {    
        if (e.KeyChar == (char)Keys.Enter)
        {
            // On ne prend pas en compte la touche entrée 
            // comme caractère dans le texte
            e.Handled = true
            // traitement
            ...
        }
    }
    Comment je peux faire pour appeler le bonton dans le traitement au lieux de doubler le code du bonton pour rien ?????

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    75
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Septembre 2004
    Messages : 75
    Points : 44
    Points
    44
    Par défaut
    Bon après avoir réfléchit 2 sec de plus

    J'ai tout simplement fait une fonction qui comprend le traitement et j,appel cette fonction par le bouton et le keypress


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

Discussions similaires

  1. Comment détecter l'appui sur une touche du clavier?
    Par Cygnus Saint dans le forum C++
    Réponses: 2
    Dernier message: 17/09/2009, 20h31
  2. Comment détecter l'appui sur une touche hors de l'application ?
    Par freezerhm dans le forum Windows Forms
    Réponses: 6
    Dernier message: 06/04/2008, 22h53
  3. [FF] Comment détecter l'appuie sur "Enter" dans un textarea ?
    Par djuju dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 26/03/2007, 19h45
  4. Réponses: 13
    Dernier message: 18/07/2006, 15h07
  5. Réponses: 2
    Dernier message: 20/03/2006, 18h05

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