13. november 2001 - 13:40Der er
3 kommentarer og 3 løsninger
KeyListener
Hej, jeg er ved at lave en applet, og vil gerne have den til at gøre nogle specifikke ting, når der trykkes på nogle bestemte taster. man kan på nuværende tidspunkt svare på et spørgsmål, ved at klikke på nogle knapper, men det ønskes udbyget til at man også kan bruge tasterne(fx. 1,2 og 3) Det skal virke under awt og ikke swing. evt. gerne et kodeexempel...
Denne side indeholder artikler med forskellige perspektiver på Identity & Access Management i private og offentlige organisationer. Artiklerne behandler aktuelle IAM-emner og leveres af producenter, rådgivere og implementeringspartnere.
Kig på denne her, det er en klasse fra noget pacman jeg rodede med engang.
/* *husk at lukke og slukke for alt der er blevet startet op, det vil sige luk for alle thread osv. *undersøg hvordan man kan få lavet keyrepeat uden et der er et delay først *hvis man trykker på højre pil og holder den nede skal pacman flytte sig og blive ved med det hele tiden, *uden det normale delay inden keyrepeat !! */
/*Collision control * *Denne skal laves ved at man beregner hvor meget de enkelte ting fylder, altså ud fra koordinaterne *på et spøgelse og på pacman, skal det beregnes om de rører hinanden, og så dør pacman. *Det samme gælder berøring med pellets og fruits */
/** This function handles everything about the player. * That is collision control, checking to see if a pellet or a fruit has been eaten, * updating the score, and se if a ghost has catched the player. */ private void handlePlayer() { }
public void keyReleased(java.awt.event.KeyEvent e) { }
public void keyPressed(java.awt.event.KeyEvent e) { handleKey(e); }
public void keyTyped(java.awt.event.KeyEvent e) { }
private void handleKey(KeyEvent e) { switch(e.getKeyCode()) { case java.awt.event.KeyEvent.VK_LEFT: x-=2; break; case java.awt.event.KeyEvent.VK_RIGHT: x+=2; break; case java.awt.event.KeyEvent.VK_DOWN: y+=2; break; case java.awt.event.KeyEvent.VK_UP: //up y-=2; break; } e.consume(); } }
public class Keyboard extends Applet implements KeyListener { String line;
public void init() { setLayout(new FlowLayout()); addKeyListener(this); }
public void keyPressed(KeyEvent e) { //Kode når der trykkes på en knap line = \"Key pressed: \" + e.getKeyText(e.getKeyCode()); System.out.println(line); }
public void keyReleased(KeyEvent e) { line = \"Key released: \" + e.getKeyText(e.getKeyCode()); System.out.println(line); }
public void keyTyped(KeyEvent e) { line = \"Key typed: \" + e.getKeyText(e.getKeyCode()); System.out.println(line); }
Så er der et interface der forlanger at de metoder skal være der, og de overloader så dem som er højere opppe i Applet hirakiet, og så kan du modtage tastetryk.
p.s. mit eksempel kører, okay du skal strippe noget væk da du mangler et par klasser.
Synes godt om
Ny brugerNybegynder
Din løsning...
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.