Je suis un peu nouveau à Java, désolé si je fais quelque chose de mal. Je veux que mon programme dise The W key has been pressed
quand j'appuie sur le bouton W
. J'ai eu un peu de problèmes avec ça. Voici un aperçu de mon code: Java - KeyListener questions
public class Main extends JFrame implements ActionListener, KeyListener {
public void keyListener(){
addKeyListener(this);
setFocusable(true);
setFocusTraversalKeysEnabled(false);
}
public void keyPressed(KeyEvent e) {
int code = e.getKeyCode();
if (code == KeyEvent.VK_W){
System.out.println("W is pressed");
}
}
@SuppressWarnings("null")
public static void main(String[] args) throws InterruptedException {
//Initial things like variables and JFrame setup (Like: JFrame frame = new JFrame("FrameDemo");)
for(step = 0; step == step; step++){
for(i = 0; i < constructor.length; i++){
//Some code
constructor[i].draw(g);
}
}
}
}
Le KeyListener ne répond pas du tout. Je pense que cela pourrait être à cause de la boucle mais honnêtement, je n'en ai aucune idée. Quelqu'un peut-il expliquer pourquoi cela se passe et comment je pourrais le réparer?
N'utilisez pas KeyListeners. Utiliser les liaisons de touches – ControlAltDel
Où instanciez-vous votre classe 'Main'? Il semble que le code manque ici. – Berger
Ce code ne compile pas – ControlAltDel