|
Publicité | ||||||||||||||||||||||
|
|
#1 |
|
Invité régulier
![]() Inscription : novembre 2003 Messages : 10 ![]() |
j'ai donc ma voiture sur plan 2d vu de dessus
j'appuie sur up -> ca avance down -> ca recule right -> ca tourne la voiture sur elle meme vers la droite left-> ca tourne la voiture sur elle meme vers la gauche tout se passe bien seulement le probleme reste lorsque ke j'appuie sur UP + Right ->impossible de conjuguer les 2 mouvement . c'est soit l'un soit l'autre... j'ai essayé de mettre genre dans public synchronized void keyPressed(KeyEvent e) la condition suivante : else if( (e.getKeyCode() == KeyEvent.VK_UP)&&(e.getKeyCode() == KeyEvent.VK_RIGHT)) { compostion de la translation et de la rotation } mais ca ne marche pas.. en fait l'ecouteur ecoute la derniere touche enfoncée et zape totalement les autres touches enfoncées. Comment faire??? Est ce que quelqu'un a une idee...? |
|
|
00
|
|
|
#2 | |
|
Membre expérimenté
![]() ![]() ![]() SAP for Banking Inscription : juin 2002 Messages : 539 ![]() |
Je crains que tu ne puisses le faire que dans le cas d'un JMenuItem par la fonction setAccelarator().
Cependant il est écrit ceci : Citation:
__________________
TRY. N/A CATCH cx_root. |
|
|
|
00
|
|
|
#3 |
|
Membre éprouvé
![]() Inscription : avril 2002 Messages : 405 ![]() |
Lut,
Un p'tit coup de main... keypressed: up -> vitesse d'avance = 10 m/s (par exemple) gauche -> vitesse de rotation = 90°/s (par exemple, tu peux aussi le faire en rad/s) même principe pour bas, droite keyreleased: up -> vitesse d'avance = 0 m/s gauche -> vitesse de rotation = 0°/s même principe pour bas, droite Non? |
|
|
00
|
|
|
#4 | ||
|
Membre éprouvé
![]() Inscription : mars 2003 Messages : 379 ![]() |
Salut,
gege2mars, ca marche pas pour une bonne raison : quand on appuie sur deux touches, le programmes cree deux evenements qui vont etre traites l'un apres l'autre. Donc dans la fonction test, tu n'as qu'une seule source. Une solution possible (je ne dis pas que c'est la meilleure) peut etre de creer un tableau de booleens pour chaque touche, et a changer l'etat du boolean correspondant dans la fonction keyPressed(). Code :
A+ |
||
|
|
00
|
|
|
#5 | ||
|
Invité régulier
![]() Inscription : mai 2002 Messages : 13 ![]() |
En accord avec Kangourou,
tu peux faire quelque chose du genre : Code :
coco |
||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com