Veröffentlicht 5. Januar 201510 j Hallo, kurz vor weg ich bin nicht der beste wenn es um Java geht Wie bekomme ich es hin, das sich eine Figur so lange bewegt bis ich die Taste los gelasssen habe? Bei mir ist das Problem, das ich wenn ich auf Pfeiltaste rechts/links Drücke die Figur von alleine die ganze Zeit nach rechts/links Läuft. Vielen Dank private KeyListener keyListener = new KeyAdapter() { @Override public void keyPressed(KeyEvent e) { switch (e.getKeyCode()) { case KeyEvent.VK_LEFT: left(); break; case KeyEvent.VK_RIGHT: right(); break; case KeyEvent.VK_UP: jump(); break; case KeyEvent.VK_DOWN: if (!isJumping) stop(); break; } } }; @Override public KeyListener getKeyListener() { return keyListener; }
6. Januar 201510 j Hi, Habe mich noch nicht sonderlich mit Java beschäftigt aber schau mal nach KeyUp bzw. KeyDown. Sollte in etwa so aussehen... public boolean keyDown( Event e, int key ) { showStatus( "keyDown: Taste" + ( char ) key + " wurde gedrückt); doSth(); return true; // Event verarbeitet } public boolean keyUp( Event e, int key ) { showStatus( "keyUp: Taste" + ( char ) key + " losgelassen." ); return true; // Event verarbeitet } mfg chE
9. Februar 201510 j KeyPressed wird in bestimmten Intervallen gerufen, solang der Knopf gedrückt ist. Entweder knüpfst du also deine Bewegung ganz direkt an dieses Event und bewegst deine Figur direkt über den KeyListener oder du musst auch noch das KeyReleased auswerten um die Bewegung ggf. zu stoppen - z.B. wenn die im Programm entsprechende Nebenläufigkeiten hast.
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.