Permalänk
Medlem

Java KeyStroke Action

Tjena!
Jag håller på att göra ett Tetris som vi har fått i uppgift att göra i en kurs om objekt orienterad programmering i java. Mitt problem just nu är att jag inte får mina Actions att köra när jag trycker på respektive knapp alltså, höger och vänster pil. Jag har en JFrame som skapar ett objekt av TetrisComponent.

public class TetrisComponent extends JComponent implements BoardListener { private Board board; private Map colorMap; public TetrisComponent(final Board board,Map colorMap) { this.colorMap = colorMap; this.board = board; Action moveLeft = new AbstractAction() { public void actionPerformed(ActionEvent e) { System.out.println(e); board.moveSideWays("Left"); } }; this.getInputMap().put(KeyStroke.getKeyStroke("LEFT"), "moveLeft"); this.getActionMap().put("moveLeft", moveLeft); Action moveRight = new AbstractAction() { public void actionPerformed(ActionEvent e) { board.moveSideWays("Right"); } }; this.getInputMap().put(KeyStroke.getKeyStroke("RIGHT"), "moveRight"); this.getActionMap().put("moveRight", moveRight); } }

Tacksam för svar
Vill påpeka att ni inte ska lösa uppgiften åt mig utan berätta vad som är fel och därefter om det nu inte skulle gå att lösa ber jag gärna om direkta lösningar.

Mvh
Dalgren

Visa signatur

Crosshair IV | 1055T @ 3.2 GHz | 4 GB Corsair dominator | Corsair H50 | Fractal Design R3 | 2x PowerColor 6950 2GB | Corsair HX 750W

Permalänk
Medlem

Testade koden och Action-klasserna kallades varje gång jag tryckte höger eller vänster piltangent. Kan inte se vad som är fel.