hisoka56
Messages postés17Date d'inscriptionlundi 7 juillet 2003StatutMembreDernière intervention22 juillet 2008
-
2 mai 2006 à 13:42
seboutrunk
Messages postés2Date d'inscriptionvendredi 13 juin 2008StatutMembreDernière intervention23 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...
seboutrunk
Messages postés2Date d'inscriptionvendredi 13 juin 2008StatutMembreDernière intervention23 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... :)