JRadioButton控件

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):创建一个具有指定的文本、图像和选择状态的单选按钮。

示例

使用 JFrame 组件创建一个窗口,然后使用 JRadioButton 类创建一个选择季节的单选按钮组。具体实现代码如下:

package com.supermap.desktop.samplecode.swing.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("JRadioButton单选按钮示例");    //创建Frame窗口
        JPanel panel=new JPanel();    //创建面板
        JLabel label1=new JLabel("今天是什么天气:");
        JRadioButton rb1=new JRadioButton("晴天",true);    //创建JRadioButton对象
        JRadioButton rb2=new JRadioButton("阴天");    //创建JRadioButton对象
        JRadioButton rb3=new JRadioButton("多云转晴");    //创建JRadioButton对象
        JRadioButton rb4=new JRadioButton("下雨");    //创建JRadioButton对象
        JRadioButton rb5=new JRadioButton("下雪");    //创建JRadioButton对象
        label1.setFont(new Font("楷体",Font.BOLD,16));    //修改字体样式
        ButtonGroup group=new ButtonGroup();
        //添加JRadioButton到ButtonGroup中
        group.add(rb1);
        group.add(rb2);
        group.add(rb3);
        group.add(rb4);
        group.add(rb5);
        panel.add(label1);
        panel.add(rb1);
        panel.add(rb2);
        panel.add(rb3);
        panel.add(rb4);
        panel.add(rb5);
        frame.add(panel);
        frame.setBounds(300, 200, 400, 100);
        frame.setVisible(true);
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    }
}

示例代码运行结果如下:

JRadioButtonResult

相关内容

JFrame 控件

JPanel 控件

JLabel 控件

JTextField 控件

JTextArea 控件

JButton 控件

JCheckBox 控件

JComboBox 控件

JTable 控件

JList 控件

JTree 控件

JToolBar 控件