KeyListener et actionlistener

Résolu
hisoka56
Messages postés
17
Date d'inscription
lundi 7 juillet 2003
Statut
Membre
Dernière intervention
22 juillet 2008
- 2 mai 2006 à 13:42
seboutrunk
Messages postés
2
Date d'inscription
vendredi 13 juin 2008
Statut
Membre
Dernière intervention
23 mars 2010
- 23 mars 2010 à 22:01
Bonjour, je suis en train de realiser un editeur de map pour un jeu que
je fait et je rencontre quelques actions avec les keyListener, quoique
j'essaille, ils ne semblent pas marcher, j'ai fait un test tout simple
qui devrait me mettre dans al console la touche tapée mais ca ne marche
pas...

import java.awt.*;

import java.awt.event.*;

import java.io.*;

import java.util.ArrayList;


public class Editeur extends Frame implements ActionListener, KeyListener{

    /**

     *

     */

    private static final long serialVersionUID = 6988994041918638393L;

    Ecran ec;

    String mapEdited;

   

    File f = new File("maps");

    File[] listFiles = f.listFiles();

    ArrayList allFiles = new ArrayList();

   

    MenuBar menuBar = new MenuBar();

    Menu fichier = new Menu("Fichier");

    Menu ouvrir = new Menu("Ouvrir");

    MenuItem[] open = new MenuItem[listFiles.length];

    MenuItem enregistrer = new MenuItem("Enregistrer");

    MenuItem enregistrerSous = new MenuItem("Enregistrer sous...");

    MenuItem quitter = new MenuItem("Quitter");

   

   

    public Editeur() throws IOException{

        this.setTitle("editeur de map");

        this.setSize(450,550);

        this.mapEdited="";

       

        this.setMenuBar(menuBar);

        menuBar.add(fichier);

        fichier.add(ouvrir);

        fichier.add(enregistrer);

        fichier.add(enregistrerSous);

        fichier.add(quitter);

        //ouvrir.addActionListener(this);

        enregistrer.addActionListener(this);

        enregistrerSous.addActionListener(this);

        quitter.addActionListener(this);

       

        for (int i = 0; i < listFiles.length; i++) {

            allFiles.add(listFiles[i].toString());

            open[i] = new MenuItem(allFiles.get(i).toString());

            ouvrir.add(open[i]);

            open[i].addActionListener(this);

        }

       

       

        ec = new Ecran("maps/map.map");

        this.add(ec);

        this.setVisible(true);

        addKeyListener(this);

       

       

    }

   

    public void actionPerformed(ActionEvent e) {

       

       

        Object chx = e.getSource();

       

        //si on souhaite ouvrir une map...

        for (int i = 0; i < listFiles.length; i++)

            if (chx == open[i]) ec.setMap(new Carte(allFiles.get(i).toString()));

       

        if (chx == quitter){

            System.exit(0);

        }

       

        if (chx == enregistrer)

            ec.map.sauvegarder();

       

        if (chx == enregistrerSous)

            new EnregistrerSous(ec.map);

       

    }


    public void keyPressed(KeyEvent e) {

       

        // TODO Auto-generated method stub

       

    }


    public void keyReleased(KeyEvent e) {

        System.out.println(e.getKeyCode());

       

       

    }


    public void keyTyped(KeyEvent e) {

       

        // TODO Auto-generated method stub

       

    }

   

   

   

}

le code compile parfaitement mais quand j'appuis
par exemple sur la touche "k" ou "MAj" ou n'importe laquelle, rien
n'est envoyé dans la console...
A voir également:

3 réponses

hisoka56
Messages postés
17
Date d'inscription
lundi 7 juillet 2003
Statut
Membre
Dernière intervention
22 juillet 2008
1
2 mai 2006 à 16:12
j'ai essayé en le mettant avant el setVisible mais rien n'y fait
1
scaryman
Messages postés
492
Date d'inscription
vendredi 30 janvier 2004
Statut
Membre
Dernière intervention
16 mai 2007
12
2 mai 2006 à 13:53
Salut
Mets le addKeyListener avant le setVisible car cette derniere est bloquante.

Voila
A++
0
seboutrunk
Messages postés
2
Date d'inscription
vendredi 13 juin 2008
Statut
Membre
Dernière intervention
23 mars 2010

23 mars 2010 à 22:01
Bonjour j'ai un peu les même problèmes que toi je n'arrive pas à compiler avec en implémentation ces 2 méthodes KeyListener,ActionListener sur un une fenetre extends de JDialog. Si quelqu'un à une idée... :)
0