Applet 是嵌入網頁的小型 Java 程式,生命週期由瀏覽器或 appletviewer 管理。本範例實作 KeyListener 介面,捕捉鍵盤事件並即時顯示按鍵對應的 ASCII 數值。
// jdk1.3
// <applet code=KeyValue width=100 height=50></applet>
// 在 Java 源碼中加入上述註解,可直接執行:appletviewer KeyValue.java
import java.awt.*;
import java.awt.event.*;
import java.applet.*;
public class KeyValue extends Applet implements KeyListener {
TextField txt = new TextField(10);
Label lab = new Label("鍵盤對應 ASCII 碼"); // Enter 鍵值為 10
public void init() {
add(txt);
add(lab);
txt.addKeyListener(this); // 註冊鍵盤監聽器
}
// 鍵盤按下瞬間觸發
public void keyPressed(KeyEvent e) {
char ch = e.getKeyChar();
int ascii = (int) ch;
lab.setText(String.valueOf(ascii));
txt.setText(""); // 清空輸入框
txt.requestFocus(); // 保持焦點
}
// 鍵盤輸入字符時觸發(含組合鍵)
public void keyTyped(KeyEvent e) {
// 可在此處理特定字符邏輯,如 Enter 送出表單
}
// 鍵盤釋放時觸發
public void keyReleased(KeyEvent e) {
// 可處理釋放後邏輯
}
}
implements KeyListener:強制實作三方法 keyPressed、keyTyped、keyReleased。e.getKeyChar():取得按鍵對應的 Unicode 字符。(int) ch:字符轉整數即為 ASCII/Unicode 碼值。txt.requestFocus():確保輸入框持續擁有焦點,否則失去焦點後無法接收鍵盤事件。KeyValue.java。javac KeyValue.java。appletviewer KeyValue.java(利用原始碼中的 applet 註解標籤)。Applet 技術已過時(瀏覽器不再支援 Java 外掛)。現代 Web 開發請使用 JavaScript 處理鍵盤事件(keydown, keypress, keyup),或採用 JavaFX / Swing 建立桌面應用。