十. 圖形界面(GUI)設計14.鍵盤事件
鍵盤事件的事件源一般丐組件相關,當一個組件處於激活狀態時,按下、釋放或敲擊鍵盤上的某個鍵時就會發生鍵盤事件。鍵盤事件的接口是KeyListener,註冊鍵盤事件監視器的方法是addKeyListener(監視器)。實現KeyListener接口有3個:
- keyPressed(KeyEvent e):鍵盤上某個鍵被按下;
- keyReleased(KeyEvent e):鍵盤上某個鍵被按下,又釋放;
- keyTyped(KeyEvent e):keyPressed和keyReleased兩個方法的組合。
管理鍵盤事件的類是KeyEvent,該類提供方法:
public int getKeyCode(),獲得按動的鍵碼,鍵碼表在KeyEvent類中定義,參見附錄。
【例 11-20】小應用程序有一個按鈕和一個文本區,按鈕作為發生鍵盤事件的事件源,並對它實施監視。程序運行時,先點擊按鈕,讓按鈕激活。以後輸入英文字母時,在正文區顯示輸入的字母。字母顯示時,字母之間用空格符分隔,且滿10個字母時,換行顯示。
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 www.yigozongdai2.cn (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){}
}
十. 圖形界面(GUI)設計14.鍵盤事件