【JAVA】Swing单选框&复选框组件

    xiaoxiao2022-07-14  157

    最近学校课比较少,自己在闲暇时间 通过java从入门到精通(放弃)这本书了解了下Swing图形化界面,觉得这部分挺有意思的,下面是个人对该部分的按钮组件的一点小结:

    当我们进行用户注册登录的时候,界面往往会出现不同的选项框,这是我们经常会用到的,Swing组件也给我们提供了两种组件: 单选框组件(JRadioButton) 默认情况下单选按钮显示一个圆形图标,并且通常在该图标旁放置一些说明文字,继承于AbstractButton类。 复选框组件(JCheckBox) 同样继承于AbstractButton类,具有一个方块图标,外加一段描述性文字,与单选框唯一不同是复选框可以进行多选设置。

    下面是对于单选框与复选框的基本操作自己做的一个简易登录界面的代码:

    package com.lw.test; import java.awt.Container; import java.awt.GridLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.BorderFactory; import javax.swing.ButtonGroup; import javax.swing.JButton; import javax.swing.JCheckBox; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JOptionPane; import javax.swing.JPanel; import javax.swing.JRadioButton; import javax.swing.WindowConstants; public class MyCheckBoxTest extends JFrame{ JPanel jp1,jp2,jp3;//定义面板属性 JLabel jl1,jl2;//定义标签组件 JButton jb1,jb2;//定义按钮组件 JCheckBox jcb1,jcb2,jcb3;//定义多选框组件 JRadioButton jrb1,jrb2;//定义单选框组件 ButtonGroup bg;//定义按钮组 public MyCheckBoxTest(){ jp1=new JPanel(); jp2=new JPanel(); jp3=new JPanel(); jb1=new JButton("注册用户"); //创建按钮 jb2=new JButton("取消注册"); jl1=new JLabel("你的爱好"); //创建标签 jl2=new JLabel("你的性别"); jcb1=new JCheckBox("唱跳"); //创建复选框 jcb2=new JCheckBox("Rap"); jcb3=new JCheckBox("篮球"); jrb1=new JRadioButton("男"); //创建单选框 jrb2=new JRadioButton("女"); bg=new ButtonGroup(); Container c=getContentPane(); //设置布局管理器 3行1列 c.setLayout(new GridLayout(3, 1)); //向窗体添加三个面板 c.add(jp1); c.add(jp2); c.add(jp3); //添加第一个面板组件 jp1.setBorder(BorderFactory.createTitledBorder("枯木逢春 我逢你"));//创建一个带有空标题的新标题边框 jp1.add(jl2); bg.add(jrb1); //注意要把单选框放入按钮组作用域中才能实现单选 bg.add(jrb2); jp1.add(jrb1); jp1.add(jrb2); //添加第二个面板组件 jp2.add(jl1); jp2.add(jcb1); jp2.add(jcb2); jp2.add(jcb3); //添加第三个面板组件 jp3.add(jb1); //为按钮添加监听事件 jb1.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { //弹出确认对话框 JOptionPane.showMessageDialog(null, "注册成功!!,欢迎加入我们"); } }); jp3.add(jb2); //为按钮添加监听事件 jb2.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { //弹出确认对话框 JOptionPane.showMessageDialog(null,"你已取消注册"); } }); setTitle("用户注册界面");设置界面标题 setSize(350,250);设置界面大小 this.setLocation(400, 400);设置界面初始位置 setVisible(true);//界面可视化 setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);//设置虚拟机和界面一同关闭 } public static void main(String[] args) { new MyCheckBoxTest(); } }

    以下是运行结果截图:

    此图为运行后显示的界面,性别选项为单选框,只能选其中一个。而爱好选项为多选框,可以多选,注册用户和取消注册按钮添加了监听事件,点击会弹出确认对话框。 此图为点击“注册用户”弹出的确认对话框。

    此图为点击“取消注册”弹出的确认对话框。

    最新回复(0)