Java API 分類導覽 - java.awt.CheckboxGroup

CheckboxGroup 類別 (class) 用來組織 Checkbox 選項按鈕,使同一群組的 Checkbox 只能作單選。



修飾子
public class CheckboxGroup


父類別
java.lang.Object


實作介面
Serializable


建構子
CheckboxGroup()


常用方法
名稱敘述
getSelectedCheckbox()取得被選取選項
setSelectedCheckbox()設定預設選項


舉例如下
import java.awt.*;
import java.awt.event.*;

public class CheckboxGroupDemo implements ItemListener {
    Frame frame;
    CheckboxGroup checkbox;
    Checkbox checkbox1, checkbox2, checkbox3;
    
    public static void main(String[] args) {
        new CheckboxGroupDemo();
    }
    
    public CheckboxGroupDemo() {
        frame = new Frame("AWTDemo");
        frame.addWindowListener(new AdapterDemo());
        frame.setLayout(new FlowLayout());
        
        checkbox = new CheckboxGroup();
        checkbox1 = new Checkbox("c1");
        checkbox1.setCheckboxGroup(checkbox);
        checkbox1.addItemListener(this);
        checkbox2 = new Checkbox("c2");
        checkbox2.setCheckboxGroup(checkbox);
        checkbox2.addItemListener(this);
        checkbox3 = new Checkbox("c3");
        checkbox3.setCheckboxGroup(checkbox);
        checkbox3.addItemListener(this);
        checkbox.setSelectedCheckbox(checkbox1);     
        
        frame.add(checkbox1);
        frame.add(checkbox2);
        frame.add(checkbox3);
        
        frame.pack();
        frame.setVisible(true);
        
        System.out.println("c1 group: " + checkbox1.getCheckboxGroup());
        System.out.println("c2 group: " + checkbox2.getCheckboxGroup());
        System.out.println("c3 group: " + checkbox3.getCheckboxGroup());
    }
    
    public void itemStateChanged(ItemEvent e) {
        System.out.println("which: " + checkbox.getSelectedCheckbox());
    }
}

class AdapterDemo extends WindowAdapter {
    public void windowClosing(WindowEvent e) {
        System.exit(0);
    }
}

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


此例的 CheckboxGroupDemo 直接實作 ItemListener 介面
public class CheckboxGroupDemo implements ItemListener {


先利用 CheckboxGroup 的建構子 (constructor) 建立 CheckboxGroup 型態的物件,然後逐一建立 Checkbox 型態的選項,呼叫 Checkbox 的 setCheckboxGroup() 方法 (method) ,將選項設定所屬的 CheckboxGroup ,接下來呼叫 addItemListener() 設定事件處理, 並以 this 當參數,最後 CheckboxGroup 型態物件呼叫 setSelectedCheckbox() 設定預設選項
checkbox = new CheckboxGroup();
checkbox1 = new Checkbox("c1");
checkbox1.setCheckboxGroup(checkbox);
checkbox1.addItemListener(this);
checkbox2 = new Checkbox("c2");
checkbox2.setCheckboxGroup(checkbox);
checkbox2.addItemListener(this);
checkbox3 = new Checkbox("c3");
checkbox3.setCheckboxGroup(checkbox);
checkbox3.addItemListener(this);
checkbox.setSelectedCheckbox(checkbox1);


然後在命令列印出每個選項所屬的 CheckboxGroup ,這是呼叫 Checkbox 的 getCheckboxGroup()
System.out.println("c1 group: " + checkbox1.getCheckboxGroup());
System.out.println("c2 group: " + checkbox2.getCheckboxGroup());
System.out.println("c3 group: " + checkbox3.getCheckboxGroup());


由於 CheckboxDemo 實作 ItemListener 介面,因此要寫出 itemStateChanged()
public void itemStateChanged(ItemEvent e) {
    System.out.println("which: " + checkbox.getSelectedCheckbox());
}


這是先利用 CheckboxGroup 的 getSelectedCheckbox() 取得被選擇的選項,並在命令列印出相關訊息。


編譯後執行,結果如下



中英文術語對照
類別class
建構子constructor
方法method


您可以繼續參考
AWT 元件


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


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

沒有留言: