Swing學習09:Java Swing JRadioButton

單選按鈕與複選框類似都有兩種狀態,不同的是一組單選按鈕中只能有一個處於選中狀態。Swing 中 JRadioButton 類實現單選按鈕,它與 JCheckBox 一樣都是從 JToggleButton 類派生出來的。JRadioButton 通常位於一個 ButtonGroup 按鈕組中,不在按鈕組中的 JRadioButton 也就失去了單選按鈕的意義。

在同一個 ButtonGroup 按鈕組中的單選按鈕,只能有一個單選按鈕被選中。因此,如果創建的多個單選按鈕其初始狀態都是選中狀態,則最先加入 ButtonGroup 按鈕組的單選按鈕的選中狀態被保留,其後加入到 ButtonGroup 按鈕組中的其他單選按鈕的選中狀態被取消。

JRadioButton 類的常用構造方法如下。

  • JRadioButton():創建一個初始化爲未選擇的單選按鈕,其文本未設定。
  • JRadioButton(Icon icon):創建一個初始化爲未選擇的單選按鈕,其具有指定的圖像但無文本。
  • JRadioButton(Icon icon,boolean selected):創建一個具有指定圖像和選擇狀態的單選按鈕,但無文本。
  • JRadioButton(String text):創建一個具有指定文本但未選擇的單選按鈕。
  • JRadioButton(String text,boolean selected):創建一個具有指定文本和選擇狀態的單選按鈕。
  • JRadioButton(String text,Icon icon):創建一個具有指定的文本和圖像並初始化爲未選擇的單選按鈕。
  • JRadioButton(String text,Icon icon,boolean selected):創建一個具有指定的文本、圖像和選擇狀態的單選按鈕。

例 1
使用 JFrame 組件創建一個窗口,然後使用 JRadioButton 類創建一個選擇季節的單選按鈕組。實現代碼如下:

import java.awt.Font;
import javax.swing.ButtonGroup;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JRadioButton;
public class JRadioButtonDemo 
{
    public static void main(String[] agrs)
    {
        JFrame frame=new JFrame("Java單選組件示例");    //創建Frame窗口
        JPanel panel=new JPanel();    //創建面板
        JLabel label1=new JLabel("現在是哪個季節:");
        JRadioButton rb1=new JRadioButton("春天");    //創建JRadioButton對象
        JRadioButton rb2=new JRadioButton("夏天");    //創建JRadioButton對象
        JRadioButton rb3=new JRadioButton("秋天",true);    //創建JRadioButton對象
        JRadioButton rb4=new JRadioButton("冬天");    //創建JRadioButton對象
        label1.setFont(new Font("楷體",Font.BOLD,16));    //修改字體樣式
        ButtonGroup group=new ButtonGroup();
        //添加JRadioButton到ButtonGroup中
        group.add(rb1);
        group.add(rb2);
        panel.add(label1);
        panel.add(rb1);
        panel.add(rb2);
        panel.add(rb3);
        panel.add(rb4);
        frame.add(panel);
        frame.setBounds(300, 200, 400, 100);
        frame.setVisible(true);
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    }
}

在上述程序中創建了 4 個 JRadioButton 單選按鈕,並將這 4 個單選按鈕添加到 ButtonGroup 組件中。該程序的運行結果如圖:
在這裏插入圖片描述

謝謝觀看

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章