修飾子與參數
public void addKeyListener(KeyListener l)
addKeyListener() 沒有回傳值 (return value) ,需要一個 KeyListener 型態 (type) 的物件 (object) 當參數 (paramenter) 。
舉例如下
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 | import java.awt.*; import java.awt.event.*; public class KeyListenerDemo implements KeyListener { Frame frame; Label a1, a2; public static void main(String[] args) { new KeyListenerDemo(); } public KeyListenerDemo() { frame = new Frame( "AWTDemo" ); frame.addWindowListener( new AdapterDemo()); frame.addKeyListener( this ); frame.setSize( 640 , 480 ); frame.setLayout( null ); a1 = new Label( "demo1" ); a1.setSize( 200 , 30 ); a1.setLocation( 100 , 30 ); frame.add(a1); a2 = new Label( "demo2" ); a2.setSize( 200 , 30 ); a2.setLocation( 100 , 70 ); frame.add(a2); frame.setVisible( true ); } public void keyTyped(KeyEvent e) { a1.setText( "which : " + e.getKeyChar()); } public void keyPressed(KeyEvent e) { a2.setText( "Key pressed!" ); } public void keyReleased(KeyEvent e) { a2.setText( "Key released!" ); } } class AdapterDemo extends WindowAdapter { public void windowClosing(WindowEvent e) { System.exit( 0 ); } } /* 《程式語言教學誌》的範例程式 檔名:KeyListenerDemo.java 功能:示範 Java 程式 作者:張凱慶 時間:西元 2012 年 3 月 */ |
此例的 KeyListenerDemo 類別實作 KeyListener 介面
4 | public class KeyListenerDemo implements KeyListener { |
然後利用建構子設定類別的執行方式,建立視窗的 frame 之後,便呼叫 addKeyListener() ,並以 this 作參數
15 | frame.addKeyListener( this ); |
KeyListenerDemo 啟動後,按下鍵盤按鍵就會 "Key pressed!" 與按鍵字元名稱。
由於 KeyListenerDemo 實作 KeyListener ,因此 KeyListenerDemo 就是屬於 KeyListener 型態。也由於實作,因此底下要把 KeyListener 的方法都實際寫出來。
編譯後執行,結果如下

中英文術語對照 | |
---|---|
類別 | class |
方法 | method |
回傳值 | return value |
型態 | type |
物件 | object |
參數 | parameter |
您可以繼續參考
AWT 元件
相關目錄
Java API 分類導覽
Java 教材
首頁
參考資料
http://docs.oracle.com/javase/6/docs/api/java/awt/Component.html
沒有留言:
張貼留言