KeyListener et actionlistener [Résolu]

hisoka56 17 Messages postés lundi 7 juillet 2003Date d'inscription 22 juillet 2008 Dernière intervention - 2 mai 2006 à 13:42 - Dernière réponse : seboutrunk 2 Messages postés vendredi 13 juin 2008Date d'inscription 23 mars 2010 Dernière intervention
- 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...
Afficher la suite 

Votre réponse

3 réponses

Meilleure réponse
hisoka56 17 Messages postés lundi 7 juillet 2003Date d'inscription 22 juillet 2008 Dernière intervention - 2 mai 2006 à 16:12
1
Merci
j'ai essayé en le mettant avant el setVisible mais rien n'y fait

Merci hisoka56 1

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 68 internautes ce mois-ci

Commenter la réponse de hisoka56
scaryman 492 Messages postés vendredi 30 janvier 2004Date d'inscription 16 mai 2007 Dernière intervention - 2 mai 2006 à 13:53
0
Merci
Salut
Mets le addKeyListener avant le setVisible car cette derniere est bloquante.

Voila
A++
Commenter la réponse de scaryman
seboutrunk 2 Messages postés vendredi 13 juin 2008Date d'inscription 23 mars 2010 Dernière intervention - 23 mars 2010 à 22:01
0
Merci
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... :)
Commenter la réponse de seboutrunk

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.