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#2.0] Intercepter les touches du clavier


Sujet :

Windows Forms

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Juin 2005
    Messages
    184
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 184
    Par défaut [C#2.0] Intercepter les touches du clavier
    Bonjour,

    j'ai creer un projet sous Visual C# en C# 2.0,
    J'ai une winform principal et j'aimerais pouvoir intercepter les touches du clavier. Je me suis donc rendu dans le evenements de cette winform et j'ai ajouté un evenement keydown : mais sa ne marche pas

    Pouriez vous me dire comment intercepter une touche enfoncé par l'utilisateur ?

    Merci d'avance

  2. #2
    Rédacteur
    Avatar de abelman
    Inscrit en
    Février 2003
    Messages
    1 106
    Détails du profil
    Informations forums :
    Inscription : Février 2003
    Messages : 1 106
    Par défaut
    Pour les intercepter au niveau de la form il faut mettre KeyPreview à true

  3. #3
    Membre confirmé
    Inscrit en
    Juin 2005
    Messages
    184
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 184
    Par défaut
    Oui mais sa marche pas avec les touches flechés

    j'ai ajouté this.KeyPreview = true; dans la classe form1()

    voici mon délégué :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    this.KeyPress += new System.Windows.Forms.KeyPressEventHandler(this.Form1_KeyPress);
    
    qui renvoie donc à la fonction :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    privatevoid Form1_KeyPress(object sender, KeyPressEventArgs e)
    {
    MessageBox.Show("touche pressé"); 
    }
    

  4. #4
    Rédacteur
    Avatar de abelman
    Inscrit en
    Février 2003
    Messages
    1 106
    Détails du profil
    Informations forums :
    Inscription : Février 2003
    Messages : 1 106
    Par défaut
    Les touches fléchées ne produise pas de caractère ascii, ni les touches F1,F2, ....

    Il faut utiliser KeyDown pour choper toutes les touches

  5. #5
    Membre confirmé
    Inscrit en
    Décembre 2003
    Messages
    160
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 160
    Par défaut
    pour les touches speciales il faut surchargé la methode IsInputKey

  6. #6
    Membre confirmé
    Inscrit en
    Juin 2005
    Messages
    184
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 184
    Par défaut
    Citation Envoyé par abelman
    Les touches fléchées ne produise pas de caractère ascii, ni les touches F1,F2, ....

    Il faut utiliser KeyDown pour choper toutes les touches
    Sa marche pas

    pour les touches speciales il faut surchargé la methode IsInputKey
    Je suis debutant je sais pas le faire
    Merci de votre aide

  7. #7
    Rédacteur
    Avatar de abelman
    Inscrit en
    Février 2003
    Messages
    1 106
    Détails du profil
    Informations forums :
    Inscription : Février 2003
    Messages : 1 106
    Par défaut
    Citation Envoyé par iowa
    Sa marche pas
    Bien sur que si. Tu as bien mis KeyPreview à True?

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

Discussions similaires

  1. Intercepter les touches du clavier
    Par boby62423 dans le forum ActionScript 3
    Réponses: 6
    Dernier message: 17/07/2009, 22h38
  2. Intercepter les touches clavier sur la fiche
    Par Bourak dans le forum Langage
    Réponses: 3
    Dernier message: 14/01/2008, 15h33
  3. Intercepter les touches du clavier
    Par yacscream dans le forum C++Builder
    Réponses: 8
    Dernier message: 07/02/2007, 11h47

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