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

AWT/Swing Java Discussion :

Question sur les KeyListener


Sujet :

AWT/Swing Java

  1. #1
    Invité
    Invité(e)
    Par défaut Question sur les KeyListener
    Bonsoir,

    Voilà, je voudrais utiliser la fonction suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    public void keyPressed(KeyEvent e) {
    }
    Dans un JFrame qui hérite bien sur de KeyListener

    J'ai mis ceci dans le constructeur de mon JFrame :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
           this.addKeyListener(this);
    Mais quand j'utilise mes touches :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
     
        @Override
        public void keyPressed(KeyEvent e) {
     
            System.out.println("keyPressed");
     
            if(e.getKeyCode() == e.VK_UP)
            {
                System.out.println("HAUT");
            }
            else if(e.getKeyCode() == e.VK_DOWN)
            {
                System.out.println("BAS");
            }
            else if(e.getKeyCode() == e.VK_RIGHT)
            {
                System.out.println("DROIT");
            }
            else if(e.getKeyCode() == e.VK_LEFT)
            {
                System.out.println("GAUCHE");
            }
        }
    Rien ne ce passe, il ne rentre pas dans la fonction

    Comment utiliser la fonction addKeyListener() ?

    Merci,
    Dernière modification par Robin56 ; 03/05/2012 à 21h02. Motif: Utilisation de la balise [code][/code] (bouton #)

  2. #2
    Modérateur
    Avatar de XxArchangexX
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Mars 2012
    Messages
    1 159
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Mars 2012
    Messages : 1 159
    Points : 2 323
    Points
    2 323
    Par défaut
    Bonsoir

    Tu peux faire JFrame implements KeyListener

    sinon le principe c'est qu'il détecte le listener si ta frame est focusable, si tu as mis des panels boutons et autre swingerie, c'est eux qui ont le focus donc il ne detecte pas le listener.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    // frame focusable
    this.setFocusable(true);
    // donner le focus à la frame
    this.requestFocus();
    et sa devrait fonctionner je pense.
    L'Etat est bien administré quand l'escalier de l'école est usé et que l'herbe croît sur celui du tribunal.

    Modérateur BI

  3. #3
    Invité
    Invité(e)
    Par défaut
    Bonsoir,

    Niquel


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

Discussions similaires

  1. Petite question sur les performances de Postgres ...
    Par cb44 dans le forum PostgreSQL
    Réponses: 5
    Dernier message: 13/01/2004, 13h49
  2. question sur les vertex buffer et index buffer
    Par airseb dans le forum DirectX
    Réponses: 9
    Dernier message: 25/08/2003, 02h38
  3. question sur les variables globales et les thread posix
    Par souris_sonic dans le forum POSIX
    Réponses: 5
    Dernier message: 13/06/2003, 13h59
  4. Question sur les handles et les couleurs...
    Par MrDuChnok dans le forum C++Builder
    Réponses: 7
    Dernier message: 29/10/2002, 08h45
  5. question sur les message box !
    Par krown dans le forum Langage
    Réponses: 7
    Dernier message: 02/08/2002, 16h11

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