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

 Java Discussion :

KeyListener sur un JFrame


Sujet :

Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2008
    Messages : 13
    Par défaut KeyListener sur un JFrame
    bonjour j'ai un petit problème avec un code, j'ai crée une fenêtre sur laquelle j'ai mis un KeyListener, dans la fenetre se trouve une grille de boutons dont au depart le bouton en haut a gauche est colorié, j'aimerais que lorsque j'appuie sur la fleche droite le bouton qui était colorié ne soit plus colorié mais que ce soit celui a sa droite qui se colorie. Mon code ne marche pas vu que j'ai des difficultés avec les keyListeners, voici la partie ou le keyListener intervient
    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
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    public class toucheListener implements KeyListener
        {
            int a;
            int b;
            public toucheListener() // dans le constructeur je retrouve les coordonées du seul bouton colorié
            {
                for(int i=0; i<30; i++)
                {
                    for(int j=0; j<30; j++)
                    {
                        if(dik[i][j]==1)
                        {
                            a=i;
                            b=j;
                        }
                    }
                }
            }
     
            public void keyTyped(KeyEvent e)
            {
                int id = e.getID();
                if (id == KeyEvent.VK_RIGHT)
                {
                dik[a][b]=0;    // dik etant un tableau d'entiers
                dik[a][b+1]=1;
                tab[a][b].setBackground(Color.white);   // tab étant un tableau de boutons dans lequel sont stockés tout les boutons de la grille
                tab[a][b+1].setBackground(Color.orange);
                }
            }
            public void keyPressed(KeyEvent d)
            {
            }
            public void keyReleased(KeyEvent d)
            {
            }
        }
    si quelqu'un pouvait m'aider ce serait tres sympatique.
    Merci d'avance

  2. #2
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    appele repaint() sur tes composants après les avoir modifiés.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2008
    Messages : 13
    Par défaut
    J'ai essayé de mettre repaint sur le panel, ca ne change rien, alors j'ai essayé sur les boutons, ca ne marche pas non plus...

  4. #4
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    on peut voir comment tu branche ton listener?

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2008
    Messages : 13
    Par défaut
    je fais comme ceci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    frame.addKeyListener(new toucheListener());
    note: frame est un JFrame si ça a de l'importance
    merci

  6. #6
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    Lit ceci : http://www.developpez.net/forums/d26...ame-ne-repond/

    ca parle de l'ajout de ce genre de listener sur le JFrame et des problèmes associés.

Discussions similaires

  1. [Debutant]KeyListener sur JFrame ne repond pas
    Par Romain93 dans le forum Agents de placement/Fenêtres
    Réponses: 12
    Dernier message: 16/10/2008, 17h44
  2. [AWT] JFrame - Mettre une taille minimum sur une Jframe
    Par rabobsky dans le forum Agents de placement/Fenêtres
    Réponses: 12
    Dernier message: 27/07/2005, 18h20
  3. JLabel et keylistener sur un JPanel
    Par Azanael dans le forum Agents de placement/Fenêtres
    Réponses: 4
    Dernier message: 19/06/2005, 21h41
  4. [Exception]Lors d'un validate sur un jframe
    Par cameleon2002 dans le forum Agents de placement/Fenêtres
    Réponses: 12
    Dernier message: 02/05/2005, 11h27
  5. [Icon] logo sur une JFrame
    Par ibou2610 dans le forum Agents de placement/Fenêtres
    Réponses: 2
    Dernier message: 30/07/2004, 10h45

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