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 :

Détecter le clic sur la touche F1 dans une form.


Sujet :

Windows Forms

  1. #1
    Débutant   Avatar de demando77
    Inscrit en
    Décembre 2007
    Messages
    263
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 263
    Points : 100
    Points
    100
    Par défaut Détecter le clic sur la touche F1 dans une form.
    Slt!
    Je développe an VS C# 2008 et j'ai besoin de détecter l'appui de l'utilisateur sur la touche spéciale F1 du clavier, je sais que c'est l'évènement Keypress mais je ne connais pas comment le détecter.

    Merci

    TM018

  2. #2
    Membre émérite Avatar de Guulh
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    2 160
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2007
    Messages : 2 160
    Points : 2 925
    Points
    2 925
    Par défaut
    Dans le designer de forms, les events d'un contrôle / d'un form se trouvent dans l'onglet "events" (dont l'icône est un éclair) de la fenêtre de propriété.

    Par contre, par défaut, la form ne récupère pas tous les events clavier. Pour que ce soit le cas, tu dois modifier la propriété KeyPreview de la form et la mettre à true. (sinon, c'est le contrôle qui a le focus qui récupère tous les events clavier).

  3. #3
    Débutant   Avatar de demando77
    Inscrit en
    Décembre 2007
    Messages
    263
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 263
    Points : 100
    Points
    100
    Par défaut
    Citation Envoyé par Guulh Voir le message
    Dans le designer de forms, les events d'un contrôle / d'un form se trouvent dans l'onglet "events" (dont l'icône est un éclair) de la fenêtre de propriété.
    Ca merci je sais.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Par contre, par défaut, la form ne récupère pas tous les events clavier. Pour que ce soit le cas, tu dois modifier la propriété KeyPreview de la form et la mettre à true. (sinon, c'est le contrôle qui a le focus qui récupère tous les events clavier).
    Mais là, j'ai besoin d'un exemple de code...
    Je le fait mais du genre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    private void tbalu_KeyPress(object sender, KeyPressEventArgs e)
            {
                separat = System.Globalization.CultureInfo.CurrentCulture.NumberFormat.NumberDecimalSeparator[0];
                if (e.KeyChar == '.' | e.KeyChar == ',') e.KeyChar = separat;
     
            }
    Comment faire de même pour la touche F1, j'aimerais lancer l'aide.
    Merci

    TM018

  4. #4
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    1 277
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Réunion

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 277
    Points : 1 521
    Points
    1 521
    Par défaut
    La documentation précise que ce n'est pas possible avec KeyPress.

    Il faut utiliser le couple KeyDown / KeyUp qui possède un KeyEventArgs (et non pas un KeyPressEventArgs).

    Il faut ensuite le comparer le KeyCode avec l'énumérations Keys : Keys.F1 par exemple.

  5. #5
    Membre émérite Avatar de Guulh
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    2 160
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2007
    Messages : 2 160
    Points : 2 925
    Points
    2 925
    Par défaut
    je sais que c'est l'évènement Keypress mais je ne connais pas comment le détecter
    Aaaaah, "le" ne voulait pas dire l'event, mais "l'appui sur la touche"... A question ambigüe, réponse à côté de la plaque

    Plus simple : si ton appli a un menu, associe le raccourci clavier "F1" à l'un des menuItem, et tout ça sera fait automatiquement.

  6. #6
    Débutant   Avatar de demando77
    Inscrit en
    Décembre 2007
    Messages
    263
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 263
    Points : 100
    Points
    100
    Par défaut
    J'ai essayé avec un menu, ca a marché et puisque je ne voilait pas le voir apparâitre, je l'ai mis .enabled=false.

    Merci*

    TM018

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 28/09/2012, 11h51
  2. Bloquer la touche [ENTREE] dans une form
    Par systemofaxav dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 09/06/2006, 14h59
  3. [VB.NET] Clic sur un bouton pour afficher une form existante
    Par beegees dans le forum Windows Forms
    Réponses: 2
    Dernier message: 09/06/2006, 10h31
  4. [Javascript] appui sur la touche entrée dans une textbox
    Par LE NEINDRE dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 02/01/2006, 11h19
  5. Détecter l'appui sur la touche de fonction F2
    Par titiyo dans le forum Composants VCL
    Réponses: 6
    Dernier message: 18/06/2003, 11h07

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