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

2D Java Discussion :

Gestion de 2 touches clavier


Sujet :

2D Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Février 2011
    Messages
    56
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 56
    Par défaut Gestion de 2 touches clavier
    Bonjour à tous,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     char ch = evt.getKeyChar();
        if (ch == KeyEvent.VK_SPACE){ System.out.println("Espace");
        }
        else if (ch == KeyEvent.VK_P){ System.out.println("P");
        }
        else{ System.out.println("pas P et pas Espace");
        }
    La touche "SPACE" affiche bien "Espace", mais la touche "P" n'affiche rien ?

    Je ne vois pas ou est l'erreur ?

    DMF

  2. #2
    Membre expérimenté
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    281
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 281
    Par défaut
    Tu compares un char et un int, il doit y avoir conversion au moment de la comparaison. Essai plutot avec la méthode getKeyCode()

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Février 2011
    Messages
    56
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 56
    Par défaut
    Bonjour Druzy,

    J'ai trouvé, le problème vient de la Majuscule.
    si la touche est "p" ça ne fonctionne pas
    si la touche est "P" ça fonctionne
    il n'y a pas de "VK_p" dans la liste

    avec la méthode getKeyCode(),
    je trouve ou les codes des touches ?

    Merci,
    DMF

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Février 2011
    Messages
    56
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 56
    Par défaut
    Résolu,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
        if (evt.getKeyCode() == KeyEvent.VK_P){ lettreClavier="P"; }
    Plus de problème entre les majuscules et minuscules

    DMF

  5. #5
    Membre expérimenté
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    281
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 281
    Par défaut
    Justement la variable KeyEvent.VK_P renvoie le code de la touche clavier "p" et c'est un int.
    La méthode evt.getKeyCode() renvoie le code de la touche clavier lié à l'évènement.
    Ton code devrait être :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    int co = evt.getKeyCode();
        if (co == KeyEvent.VK_SPACE){ System.out.println("Espace");
        }
        else if (co == KeyEvent.VK_P){ System.out.println("P");
        }
        else{ System.out.println("pas P et pas Espace");
        }
    PS : je pense que ça marche avec la touche espace par pure hasard de la conversion ascii de la touche espace.

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

Discussions similaires

  1. Gestion des touches clavier
    Par new_wave dans le forum Débuter
    Réponses: 2
    Dernier message: 15/04/2012, 00h09
  2. [SDL] Gestion des touches claviers problématique
    Par Invité4 dans le forum SDL
    Réponses: 3
    Dernier message: 13/10/2006, 21h15
  3. Gestion des touches clavier
    Par bourinator dans le forum Interfaces Graphiques en Java
    Réponses: 4
    Dernier message: 18/06/2006, 16h19
  4. [Applet]simuler une touche clavier
    Par mat10000 dans le forum Interfaces Graphiques en Java
    Réponses: 19
    Dernier message: 12/12/2003, 16h23
  5. envoie de touche clavier
    Par psfox2001 dans le forum DirectX
    Réponses: 1
    Dernier message: 13/03/2003, 21h56

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