Cursortasten abhören....

Status
Nicht offen für weitere Antworten.
W

waxalot

Gast
Halli hallo,

kann mir vielleicht jemand sagen wie ich in meinem Programm die Cursortasten abfragen kann?
Also ich möchte durch die Pfeil-oben-Taste z.B. einen Wert erhöhen....
Ich denke mal das das für euch kein Problem sein wird.... =) Für mich irgendwie schon! =(

peace
 
T

Thorsten Sommer

Gast
Du musst in deinem Programm einen KeyListener implementieren. Da ich dein Programm nicht kenne,
kann ich nur raten:

In der Hauptklasse (dort wo deine main Methode liegt), implementierst du den Listener.

Zum Beispiel:
Code:
public class MEINEKLASSE extends JFrame implements KeyListener


Nun rufst du im Konstruktor dieser Klasse folgende Methode auf:
Code:
public MEINEKLASSE
{
   //KeyListener hinzufügen
   addKeyListener(this);
}

Natürlich musst du auch den Konstruktor in der main Methode mal aufrufen :wink:

So, und jetzt musst du drei Methoden aus dem Interface überladen:
Code:
    public void keyTyped(KeyEvent e)
    {
    }

    public void keyPressed(KeyEvent e)
    {   	
        if (e.getKeyCode() == e.VK_CONTROL)
        {
        }
    }

    public void keyReleased(KeyEvent e)
    {
        if (e.getKeyCode() == e.VK_NUMPAD1)
        {
        }
    }

Alles klar? Hier wird zum Beispiel abgefragt, ob du auf dem Num-Block die
1 losgelassen hast, oder ob du die Taste Strg gedrückt hast. Du musst dir
die anderen Konstanten eben aus KeyEvent heraus suchen.
 
W

waxalot

Gast
Vielen Dank, hätte nicht gedacht, dass es so einfach wird....
Danke nochmal !!!
 
W

waxalot

Gast
Hallo nochmal,

also das mit dem KeyListener habe ich hin bekommen... Nun würde ich aber gerne nicht über die vordefinierten
Konstanten (VK_B etc.) lauschen, sondern nach dem ASCII Code abfragen...
Geht das irgendwie, das ich anstatt

Code:
if(e.getKeyEvent()==e.VK_B)

das benutze?

Code:
if(e.getKeyEvent()==0x62)

Ich schätze aber mal das der Wert, der hinter VK_B steckt nichts mit der ASCII Tabelle zu tun hat, oder?

peace
 
W

waxalot

Gast
Hat sich schon erledigt...
Oh man, bis mir irgendwann mal wieder einfiel, dass JAVA UNICODE benutzt ist es schon beinahe Nacht geworden. =)
peace
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen

Ähnliche Java Themen

Neue Themen


Oben