修飾子與參數
public void addActionListener(ActionListener l)
addActionListener() 沒有回傳值 (return value) ,需要 ActionListener 型態 (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 | import java.awt.*; import java.awt.event.*; public class TextFieldDemo implements ActionListener { Frame frame; TextField text; public static void main(String[] args) { new TextFieldDemo(); } public TextFieldDemo() { frame = new Frame( "AWTDemo" ); frame.addWindowListener( new AdapterDemo()); frame.setLayout( new FlowLayout()); text = new TextField(); text.addActionListener( this ); text.setColumns( 20 ); text.setEchoChar( '*' ); text.setText( "There is no spoon." ); frame.add(text); frame.pack(); frame.setVisible( true ); System.out.println( "echoCharIsSet: " + text.echoCharIsSet()); System.out.println( "getColumns: " + text.getColumns()); System.out.println( "getEchoChar: " + text.getEchoChar()); } public void actionPerformed(ActionEvent e) { System.out.println( "input: " + text.getText()); } } class AdapterDemo extends WindowAdapter { public void windowClosing(WindowEvent e) { System.exit( 0 ); } } /* 《程式語言教學誌》的範例程式 檔名:TextFieldDemo.java 功能:示範 Java 程式 作者:張凱慶 時間:西元 2012 年 3 月 */ |
此例的 TextFieldDemo 實作 ActionListener 介面
4 | public class TextFieldDemo implements ActionListener { |
建立 TextField 物件後,呼叫 TextField 的 addActionListener() 處理按下 Enter 的事件,並以 this 當參數,其後依序呼叫 setColumns() 設定可輸入字元行數,也就是文字輸入框的寬度, setEchoChar() 設定回應字元,如同密碼輸入, setText() 設定預設輸入字串
17 18 19 20 21 | text = new TextField(); text.addActionListener( this ); text.setColumns( 20 ); text.setEchoChar( '*' ); text.setText( "There is no spoon." ); |
建構子最後工作是在命令列印出相關訊息,依序呼叫 TextField 的 echoCharIsSet() 印出是否有設定回應字元, getColumns() 印出可輸入文字行數(字元數), getEchoChar() 印出回應字元
28 29 30 | System.out.println( "echoCharIsSet: " + text.echoCharIsSet()); System.out.println( "getColumns: " + text.getColumns()); System.out.println( "getEchoChar: " + text.getEchoChar()); |
由於 TextField 實作 ActionListener 介面,因此要寫出 actionPerformed()
33 34 35 | public void actionPerformed(ActionEvent e) { System.out.println( "input: " + text.getText()); } |
當按下 Enter 時,命令列會印出輸入文字。
編譯後執行,結果如下

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