Java API 分類導覽 - java.awt.event.ItemListener

ItemListener 介面 (interface) 進行選項事件的處理,需要實作 itemStateChanged() 方法 (method) ,其參數 (parameter) e 為 ItemEvent 物件 (object)



修飾子
public interface ItemListener


父介面
java.util.EventListener


實作方法
名稱敘述
itemStateChanged()設定選項狀態改變的動作


舉例如下
import java.awt.*;
import java.awt.event.*;
 
public class ItemEventDemo implements ItemListener {
    Frame frame;
    Checkbox checkbox1, checkbox2, checkbox3;
     
    public static void main(String[] args) {
        new ItemEventDemo();
    }
     
    public ItemEventDemo() {
        frame = new Frame("AWTDemo");
        frame.addWindowListener(new AdapterDemo());
        frame.setLayout(new FlowLayout());
         
        checkbox1 = new Checkbox("c1");
        checkbox1.addItemListener(this);
        checkbox2 = new Checkbox("c2");
        checkbox2.addItemListener(this);
        checkbox3 = new Checkbox("c3");
        checkbox3.addItemListener(this);
         
        frame.add(checkbox1);
        frame.add(checkbox2);
        frame.add(checkbox3);
         
        frame.pack();
        frame.setVisible(true);
    }
     
    public void itemStateChanged(ItemEvent e) {
        String l = (String) e.getItem();
        if (e.getStateChange() == ItemEvent.SELECTED) {
            System.out.println(l + " selected");
        }
        if (e.getStateChange() == ItemEvent.DESELECTED) {
            System.out.println(l + " deselected");
        }
    }
}
 
class AdapterDemo extends WindowAdapter {
    public void windowClosing(WindowEvent e) {
        System.exit(0);
    }
}

/* 《程式語言教學誌》的範例程式
    http://pydoing.blogspot.com/
    檔名:ItemEventDemo.java
    功能:示範 Java 程式 
    作者:張凱慶
    時間:西元 2012 年 3 月 */


此例的 ItemEventDemo 有實作 ItemListener 介面
public class ItemEventDemo implements ItemListener {


因此需要實作 itemStateChanged() 方法,參數 e 就是 ItemEvent 物件,接著呼叫 ItemEvent 的 getItem() 取得選項標籤,若是 getStateChange() 的回傳值等於 ItemEvent.SELECTED ,就印出該選項標籤與被選取的提示,反之,若是 getStateChange() 的回傳值等於 ItemEvent.DESELECTED ,就印出該選項標籤與取消選取的提示
public void itemStateChanged(ItemEvent e) {
    String l = (String) e.getItem();
    if (e.getStateChange() == ItemEvent.SELECTED) {
        System.out.println(l + " selected");
    }
    if (e.getStateChange() == ItemEvent.DESELECTED) {
        System.out.println(l + " deselected");
    }
}


編譯後執行,結果如下



中英文術語對照
介面interface
方法method
參數parameter
物件object


您可以繼續參考
事件處理


相關目錄
Java API 分類導覽
Java 教材
首頁


參考資料
http://docs.oracle.com/javase/6/docs/api/java/awt/event/ItemListener.html

沒有留言: