第十二篇、图片按钮、单选框、多选框


前言

上一篇我们共同学习了文本域面板JScrollPane,本篇我们将学习图片按钮、单选框、多选框。


一、各类按钮的操作

  1. 图片按钮:跟我们之前学的图片图标差不多,我们只需要生成imageicon将图片的地址导入进去,生成icon类型的对象,再设置按钮的icon为这个对象即可。
  2. 单选框(JRadioButton):单选框我们就是要将多个选择按钮进行分组,放到一个组中,每一个组只允许一个选择按钮被选择。
  3. 多选框(JCheckBox):跟上面的单选框类似但不同的是多选框不需要进行分组,保证多个按钮都可以被选择。

二、代码示例

1.图片按钮

代码如下(示例):
JButtonDemo类

public class JButtonDemo extends JFrame {
    public JButtonDemo(){
        Container container = this.getContentPane();
        //图片图标
        URL picture = JButtonDemo.class.getResource("/img.png");
        Icon icon = new ImageIcon(picture);

        JButton jButton = new JButton();
        jButton.setBounds(50,100,200,200);
        //jButton.setHorizontalAlignment(SwingConstants.CENTER);
        jButton.setIcon(icon);
        jButton.setToolTipText("图片图标");

        container.add(jButton);
        container.setLayout(null);

        this.setSize(700,500);
        this.setVisible(true);
        this.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
    }

    public static void main(String[] args) {
        new JButtonDemo();
    }
}

运行结果:
在这里插入图片描述

2.单选框

代码如下(示例):
JRadioDemo类

public class JRadioDemo extends JFrame {
    public JRadioDemo(){
        Container container = this.getContentPane();
        //单选框
        JRadioButton jRadioButton1 = new JRadioButton("jRadioButton1");
        JRadioButton jRadioButton2 = new JRadioButton("jRadioButton2");
        JRadioButton jRadioButton3 = new JRadioButton("jRadioButton3");
        //由于单选框只能选一个所以需要分组
        ButtonGroup buttonGroup = new ButtonGroup();
        buttonGroup.add(jRadioButton1);
        buttonGroup.add(jRadioButton2);
        buttonGroup.add(jRadioButton3);

        container.add(jRadioButton1,BorderLayout.NORTH);
        container.add(jRadioButton2,BorderLayout.CENTER);
        container.add(jRadioButton3,BorderLayout.SOUTH);

        this.setSize(200,300);
        this.setVisible(true);
        this.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
    }

    public static void main(String[] args) {
        new JRadioDemo();
    }
}

运行结果:
在这里插入图片描述

3.多选框

代码如下(示例):
JCheckBoxDemo类

public class JCheckBoxDemo extends JFrame {
    public JCheckBoxDemo(){
        Container container = this.getContentPane();
        //多选框
        JCheckBox jCheckBox1 = new JCheckBox("jCheckBox1");
        JCheckBox jCheckBox2 = new JCheckBox("jCheckBox2");
        JCheckBox jCheckBox3 = new JCheckBox("jCheckBox3");

        container.add(jCheckBox1,BorderLayout.NORTH);
        container.add(jCheckBox2,BorderLayout.CENTER);
        container.add(jCheckBox3,BorderLayout.SOUTH);

        this.setSize(200,300);
        this.setVisible(true);
        this.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
    }

    public static void main(String[] args) {
        new JCheckBoxDemo();
    }
}

运行结果:
在这里插入图片描述


总结

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值