修飾子與參數
public void setLabel(String label)
setLabel() 沒有回傳值 (return value) ,需要 String 型態 (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 54 55 56 57 58 59 60 61 | import java.awt.*; import java.awt.event.*; public class CheckboxDemo implements ItemListener { Frame frame; Checkbox checkbox1, checkbox2, checkbox3; public static void main(String[] args) { new CheckboxDemo(); } public CheckboxDemo() { frame = new Frame( "AWTDemo" ); frame.addWindowListener( new AdapterDemo()); frame.setLayout( new FlowLayout()); checkbox1 = new Checkbox( "c1" ); checkbox1.addItemListener( this ); checkbox2 = new Checkbox( "c2" ); checkbox2.setState( true ); checkbox2.addItemListener( this ); checkbox3 = new Checkbox( "c3" ); checkbox3.addItemListener( this ); frame.add(checkbox1); frame.add(checkbox2); frame.add(checkbox3); frame.pack(); frame.setVisible( true ); System.out.println( "c1: " + checkbox1.getState()); System.out.println( "c2: " + checkbox2.getState()); System.out.println( "c3: " + checkbox3.getState()); } public void itemStateChanged(ItemEvent e) { Checkbox c = (Checkbox) e.getSource(); String l = c.getLabel(); if (e.getStateChange() == ItemEvent.SELECTED) { c.setLabel( "on" ); System.out.println(l + " selected" ); } else { System.out.println(l + " deselected" ); } } } class AdapterDemo extends WindowAdapter { public void windowClosing(WindowEvent e) { System.exit( 0 ); } } /* 《程式語言教學誌》的範例程式 檔名:CheckboxDemo.java 功能:示範 Java 程式 作者:張凱慶 時間:西元 2012 年 3 月 */ |
此例的 CheckboxDemo 直接實作 ItemListener 介面
4 | public class CheckboxDemo implements ItemListener { |
因此建立選項後,先呼叫 Checkbox 的 addItemListener() 設定事件處理, 並以 this 當參數
17 18 19 20 21 22 23 | checkbox1 = new Checkbox( "c1" ); checkbox1.addItemListener( this ); checkbox2 = new Checkbox( "c2" ); checkbox2.setState( true ); checkbox2.addItemListener( this ); checkbox3 = new Checkbox( "c3" ); checkbox3.addItemListener( this ); |
其中第二個選項呼叫 Checkbox 的 setState() ,並以 true 當參數作為預設選項。
然後在命令列印出每個選項的狀態,這是呼叫 Checkbox 的 getState()
32 33 34 | System.out.println( "c1: " + checkbox1.getState()); System.out.println( "c2: " + checkbox2.getState()); System.out.println( "c3: " + checkbox3.getState()); |
由於 CheckboxDemo 實作 ItemListener 介面,因此要寫出 itemStateChanged()
37 38 39 40 41 42 43 44 45 46 47 | public void itemStateChanged(ItemEvent e) { Checkbox c = (Checkbox) e.getSource(); String l = c.getLabel(); if (e.getStateChange() == ItemEvent.SELECTED) { c.setLabel( "on" ); System.out.println(l + " selected" ); } else { System.out.println(l + " deselected" ); } } |
這是先利用 Checkbox 的 getLabel() 取得選項名稱,接著若是選擇該選項記就會呼叫 Checkbox 的 setLabel() 將選項名稱改為 "on" ,並在命令列印出相關訊息。
編譯後執行,結果如下

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