//************************************************************************ // Metoder der aktiveres når man aktivere keyboardet //************************************************************************
public boolean keyUp(Event e, int key){ if(key == Event.LEFT){ playerMoveLeft = false; } else if(key == Event.RIGHT){ playerMoveRight = false; }
Hvordan kan jeg få den til at lytte på min klasse GuiSpil. Det skal være sådan at når jeg aktivere tasterne skal metoderne keyUp() og keyDown() aktiveres. Men set skal ske når jeg spiller spillet, altså når GuiSpil er aktiveret (fremme på skærmen)
jeg ved ikke om jeg er 100% med på problemstillingen, men hvis du vil ha' en klasse til at lytte til dine keyEvents skal du implementere interfacet KeyListener. Og i din konstruktor skal du add'e den til din klasse
..
public class DinFrame implements KeyListener { public KeysListener() { addKeyListener(this); } // og så metoderne public void keyTyped(KeyEvent e){} public void keyPressed(KeyEvent e){} public void keyReleased(KeyEvent e){} }
Måske lidt inpirration: (bruges med: frame.addKeyListener(new Listener());
import java.awt.event.*;
public class Listener extends KeyAdapter{ private final int LEFT = 0; private final int RIGHT = 1; private final int UP = 2; private final int DOWN = 3; private final int SPACE = 4;
private boolean keysdown[];
public Listener(){ keysdown = new boolean[]{false, false, false, false, false}; }
public void keyPressed(KeyEvent evt){ int key = evt.getKeyCode(); switch(key) { case 37: keysdown[LEFT] = true; break; case 39: keysdown[RIGHT] = true; break; case 38: keysdown[UP] = true; break; case 40: keysdown[DOWN] = true; break; case 32: keysdown[SPACE] = true; break; }
trolle: du var bestemt ikke 4 min. for sent på den for du ramte lige det som jeg skulle bruge og det var KeysListener k = new KeysListener(); GuiSpil gui = new GuiSpil(); gui.addKeyListener(k); Men jeg har modtaget nogle gode fra fra jeg alle så i får da alle point. Dog skal trolle have de 50 og de resterende 25, håber at det er ok :) Men mikkelbm du skal lige svare i stedet for kommentar for ellers kan jeg ikke give dig point :)
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.