一、单选框:

1.新建 new JRadioButton 单选按钮
2.单选按钮都放到add()一个 按钮组new ButtonGroup()里(ButtonGroup只有单选功能,不存在布局功能,所以要第三步,单独添加JRadioButton 到容器)
3.单独添加 单选按钮到容器,并设置布局

代码:

package GUI.Swing.图片按钮_单选框_多选框;

import javax.swing.*;
import java.awt.*;

public class 单选框 extends JFrame {
    public 单选框() throws HeadlessException {
        this.setTitle("单选框");
        this.setVisible(true);
        this.setBounds(100,100,400,300);
        this.setDefaultCloseOperation(EXIT_ON_CLOSE);
        Container contentPane = this.getContentPane();
        /*
        单选框方法教程:
        new 3 个 JRadioButton 单选框,然后放到一个按钮组ButtonGroup里(按钮组只实现单选效果,不布局)
        在将3个单选按钮填加到容器并且布局
         */
        JRadioButton jarvan = new JRadioButton("jarvan");
        JRadioButton 半亩方糖 = new JRadioButton("半亩方糖");
        JRadioButton 时光 = new JRadioButton("时光");
        //add the JRadioButtons to the ButtonGroup
        ButtonGroup buttonGroup = new ButtonGroup();
        buttonGroup.add(jarvan);
        buttonGroup.add(半亩方糖);
        buttonGroup.add(时光);
        //add the JRadioButtons to the contentPane ,and set the Layout
        contentPane.add(jarvan,BorderLayout.NORTH);
        contentPane.add(半亩方糖,BorderLayout.CENTER);
        contentPane.add(时光,BorderLayout.SOUTH);

    }

    public static void main(String[] args) {
        new 单选框();
    }
}

效果图
在这里插入图片描述

二、多选框(其实单选框不用ButtonGroup也能达到类似效果):

和单选框类似,JRadioButton 变成 check
package GUI.Swing.图片按钮_单选框_多选框;

import javax.swing.*;
import java.awt.*;

public class 多选框 extends JFrame {
    public 多选框() throws HeadlessException {
        this.setTitle("多选框");
        this.setBounds(100, 100, 400, 400);
        this.setVisible(true);
        this.setDefaultCloseOperation(EXIT_ON_CLOSE);
        /*
        复选框教程:
        1.新建 Checkbox()
        2.将复选框添加到容器
         */
        Checkbox jarvan = new Checkbox("jarvan");
        Checkbox shiGuang = new Checkbox("shiGuang");
        Checkbox 半亩方糖 = new Checkbox("半亩方糖");
        //add checkBox to the contentPane
        Container contentPane = this.getContentPane();
        contentPane.add(jarvan, BorderLayout.NORTH);
        contentPane.add(shiGuang, BorderLayout.CENTER);
        contentPane.add(半亩方糖, BorderLayout.SOUTH);

    }

    public static void main(String[] args) {
        new 多选框();

    }
}

效果图

在这里插入图片描述
#### 问题:汉字无法显示的编码问题。

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐