Die Ereignisquelle von Tastaturereignissen hängt im Allgemeinen mit Komponenten zusammen. Wenn eine Komponente aktiviert ist, tritt ein Tastaturereignis auf, wenn eine Taste auf der Tastatur gedrückt, losgelassen oder angetippt wird. Die Schnittstelle für Tastaturereignisse ist KeyListener und die Methode zum Registrieren eines Tastaturereignismonitors ist addKeyListener(monitor). Es gibt drei KeyListener-Schnittstellen:
keyPressed(KeyEvent e): eine Taste auf der Tastatur wird gedrückt;
keyReleased(KeyEvent e): eine Taste auf der Tastatur wird gedrückt und Release
keyTyped(KeyEvent e): eine Kombination aus den Methoden keyPressed und keyReleased.
Die Klasse, die Tastaturereignisse verwaltet, ist KeyEvent. Diese Klasse stellt Methoden bereit:
public int getKeyCode(), um den gedrückten Tastencode zu erhalten.
【Beispiel】Das Applet verfügt über eine Schaltfläche und einen Textbereich. Die Schaltfläche dient als Ereignisquelle für Tastaturereignisse und überwacht diese. Wenn das Programm ausgeführt wird, klicken Sie zuerst auf die Schaltfläche, um die Schaltfläche zu aktivieren. Wenn Sie künftig englische Buchstaben eingeben, werden die eingegebenen Buchstaben im Textbereich angezeigt. Bei der Anzeige von Buchstaben werden diese durch Leerzeichen getrennt, bei 10 Buchstaben werden diese in neuen Zeilen angezeigt.
import java.applet.* import java.awt.*; import java.awt.event.*; public class Example6_10 extends Applet implements KeyListener{ int count =0; Button button = new Button(); TextArea text = new TextArea(5,20); public void init(){ button.addKeyListener(this); add(button);add(text); } public void keyPressed(KeyEvent e){ int t = e.getKeyCode(); if(t>=KeyEvent.VK_A&&t<=KeyEvent.VK_Z){ text.append((char)t+" "); count++; if(count%10==0) text.append("\n"); } } public void keyTyped(KeyEvent e){} public void keyReleased(KeyEvent e){} }
Weitere Artikel zur Einführung des Tastaturereignisdesigns in der grafischen Java-Programmierung finden Sie auf der chinesischen PHP-Website!