06. december 2004 - 18:03Der er
8 kommentarer og 1 løsning
JTextField & KeyEvent VK_UP
Hej,
Er det muligt at få et JTextField til at reagere på andet end de karakterer man rent faktisk kan skrive i det, som for eksempel pil-op. Jeg har ledt et stykke tid på google, men finder ikke lige noget, der beskriver det jeg har brug for.
Det jeg skal bruge det til er et lille tekstbaseret adventure-spil, hvor jeg gerne vil kunne browse i de kommandoer man har indtastet, ved at hente dem fra et stack eller noget i den stil (jeg skal lige have lortet til at reagere på VK_UP), det kode jeg har indtil videre, ser således ud:
// Add a keylistener, for the purpose of browsing trough // command history. commandInput.addKeyListener(new KeyAdapter() { public void keyTyped(KeyEvent e) {commandLineListener(e);} });
/** * When the user presses a key, the focus will be on the * commandline. */ private void commandLineListener(KeyEvent e) { char keyChar = e.getKeyChar(); int keyCode = e.getKeyCode(); System.out.println(keyChar); System.out.println(keyCode); }
Alt det gør er jo bare at printe den tast som man trykker på ud, samt dens tilsvarende keyCode, men den printer intet ud på f.eks f-taster, og piletaster - det er det jeg har brug for. Håber folk fatter hvad jeg mangler :)
if (keyCode == KeyEvent.VK_UP) System.out.println("Tasten: UP er trykket"); else if (keycode == KeyEvent.VK_DOWN); System.out.println("Tasten: DOWN er trykket"); }
// Add a keylistener, for the purpose of browsing trough // command history. commandInput.addKeyListener(new KeyAdapter() { public void keyPressed(KeyEvent e) {commandLineListener(e);} });
Og jeg var fuldstændig blank mht f-tasterne, men det var jo egentlig åbenlyst at det var f1, f2 osv. du mente :)
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.