Bonjour, après une recherche assez longue sur le forum je me suis décider à faire ce poste car je n'ai pas pu trouver la réponse que je cherche, voici mon problème :
Il est assez facile, en java avec KeyListener d'intercepter une touche sur stdin (le clavier) de la facon suivante :
(dans une classe qui extends KeyListener)
Ce code marche très bien quand on appuie sur une touche à la fois. Mais comment faire pour gérer l'utilisation de plusieurs touches en même temps ? Je voudrais faire un petit jeu à deux joueurs avec des touches distinctes mais avec ce code une action d'un joueur entrave celle de l'autre ( si on appuie sur deux touches en même temps c'est la dernières touche qui est prise en compte)
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 public void keyTyped(KeyEvent e){ char c = e.getKeyChar(); System.out.println("key typed = "+e.getKeyChar()); switch(c) { case '8' : //une action break; case '2' : // une autre action break; //etc etc etc } }
Question Bonus :
Est-ce qu'on utilise des classes internes pour la gestions d'évènements ? J'ai vu les classes internes en cours il y a peu de temps et j'ai essayer d'en utiliser une pour la gestion d'event aujourd'hui même mais je n'y arrivais pas ( une class Animal extends JComponent implements KeyListener , extends JComponent pour avoir le focus avec requestFocus(), mais malgrés tout le clavier ne réagissait pas )
Voila, merci d'avance pour vos réponses
Partager