16.11.2013 Aufrufe

Programmieren in Java - HostFiXX.de

Programmieren in Java - HostFiXX.de

Programmieren in Java - HostFiXX.de

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

<strong>Programmieren</strong> <strong>in</strong> <strong>Java</strong><br />

steht, Das Interface FocusListener enthält zwei unterschiedliche Metho<strong>de</strong>n:<br />

public abstract void focusGa<strong>in</strong>ed(FocusEvent e)<br />

// Aufruf, wenn die Komponente <strong>de</strong>n Fokus erhält<br />

public abstract void focusLost(FocusEvent e)<br />

// Aufruf, wenn die Komponente <strong>de</strong>n Fokus abgibt<br />

Über die Metho<strong>de</strong> public void requestFocus() kann e<strong>in</strong>e Komponente <strong>de</strong>n<br />

Fokus für sich selbst beanspruchen bzw. ihn e<strong>in</strong>er an<strong>de</strong>ren Komponenten zuweisen.<br />

3.1.5.6 Key-Events<br />

E<strong>in</strong> Empfänger für Key-Events muß das Interface KeyListener implementieren und<br />

bekommt Events <strong>de</strong>s Typs KeyEvent übergeben. KeyEvent erweitert die Klasse<br />

InputEvent, die aus ComponentEvent abgeleitet ist, und stellt neben getID,<br />

getSource e<strong>in</strong>e Reihe von Metho<strong>de</strong>n zur Erkennung und Berabeitung von<br />

Tastaturco<strong>de</strong>s zur Verfügung. Die Registrierung erfolgt mit <strong>de</strong>r Metho<strong>de</strong> public<br />

void addKeyListener (KeyListener l), die auf allen Objekten <strong>de</strong>s Typs<br />

Component o<strong>de</strong>r daraus abgeleiteter Klassen zur Verfügung steht. Das Interface<br />

KeyListener <strong>de</strong>f<strong>in</strong>iert drei unterschiedliche Metho<strong>de</strong>n:<br />

public abstract void keyTyped(KeyEvent e);<br />

public abstract void keyPressed(KeyEvent e);<br />

public abstract void keyReleased(KeyEvent e);<br />

Die Taste, die gedrückt wur<strong>de</strong>, erhält man über die folgen<strong>de</strong>n Metho<strong>de</strong>n <strong>de</strong>r Klasse<br />

KeyEvent bereitgestellt:<br />

public <strong>in</strong>t getKeyCo<strong>de</strong>()<br />

liefert virtuelle Tastenco<strong>de</strong>s, die <strong>in</strong> KeyEvent als symbolische Konstanten <strong>de</strong>f<strong>in</strong>iert wur<strong>de</strong>n.Hier wird<br />

beim Drücken <strong>de</strong>r Taste A immer <strong>de</strong>r Co<strong>de</strong> VK_A geliefert, unabhängig davon, ob UMSCHALT<br />

gedrückt wur<strong>de</strong> o<strong>de</strong>r nicht.<br />

Symbolischer Name<br />

Be<strong>de</strong>utung<br />

VK_0..VK_9 0..9<br />

VK_A..VK_Z<br />

A..Z<br />

VK_ENTER<br />

Enter<br />

VK_SPACE<br />

Leertaste<br />

VK_TAB<br />

Tabulator<br />

VK_ESCAPE<br />

Escape<br />

VK_BACK_SPACE<br />

Rückschritt<br />

VK_F1..VK_F12<br />

Die Funktionstasten F1 .. F12<br />

VK_HOME, VK_END<br />

Home, End<br />

VK_PAGE_UP, VK_PAGE_DOWN<br />

Bild hoch, Bild runter<br />

VK_DOWN, VK_UP<br />

Cursor hoch, Cursor runter<br />

VK_LEFT, VK_RIGHT<br />

Cursor l<strong>in</strong>ks, Cursor rechts<br />

VK_INSERT, VK_DELETE<br />

E<strong>in</strong>fg, Entf<br />

Abb.: Tabelle <strong>de</strong>r virtuellen Key-Co<strong>de</strong>s<br />

public char getKeyChar()<br />

liefert das Zeichen, das <strong>de</strong>r gedrückten Zeichentste entspricht, z.B. "a", wenn Taste A gedrückt wur<strong>de</strong>,<br />

und "A", wenn die Tastenkomb<strong>in</strong>ation UMSCHALT + A gedrückt wur<strong>de</strong>. Funktionstasten wer<strong>de</strong>n nicht<br />

übertragen. Der Rückgabewert ist hier KeyEvent.CHAR_UNDEFINED.<br />

216

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!