在图形用户界面编程中,我们常常会提供用户注册界面,这时候我们就会用到: 1、复选框组件 (JCheckBox) 2、单选框组件 (JRadioBuutton)
特别说明: 同一组单选按钮必需先创建 ButtonGroup ,然后把单选框组件放入到 ButtonGroup 中
下面举例说明:
/** * 测试:JCheckBox/JRadioButton */ package com.test1; import java.awt.*; import javax.swing.*; public class Demo8_7 extends JFrame{ //定义小控件 JPanel jp1 = null; JPanel jp2 = null; JPanel jp3 = null; JLabel jlb1 = null; JLabel jlb2 = null; JButton jb1 = null; JButton jb2 = null; JCheckBox jcb1 = null; JCheckBox jcb2 = null; JCheckBox jcb3 = null; JRadioButton jrb1 = null; JRadioButton jrb2 = null; ButtonGroup bg = null; /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub Demo8_7 demo8_7 = new Demo8_7(300, 200); } public Demo8_7(int x_dispSize, int y_dispSize) { //创建要使用的组件 jp1 = new JPanel(); jp2 = new JPanel(); jp3 = new JPanel(); jlb1 = new JLabel("你最喜欢的运动"); jlb2 = new JLabel("你的性别");; jb1 = new JButton("注册用户"); jb2 = new JButton("取消注册"); jcb1 = new JCheckBox("足球"); jcb2 = new JCheckBox("篮球"); jcb3 = new JCheckBox("网球"); jrb1 = new JRadioButton("男"); jrb2 = new JRadioButton("女"); bg = new ButtonGroup(); //设置JFrame布局为网格布局 this.setLayout(new GridLayout(3, 1)); //JPanel默认使用FlowLayout所以我们加进去就好了 jp1.add(jlb1); jp1.add(jcb1); jp1.add(jcb2); jp1.add(jcb3); //在这里要注意,单选框需要先放入到ButtonGroup bg.add(jrb1); bg.add(jrb2); jp2.add(jlb2); jp2.add(jrb1); jp2.add(jrb2); jp3.add(jb1); jp3.add(jb2); this.add(jp1); this.add(jp2); this.add(jp3); //设置标题 this.setTitle("用户注册界面"); //设置窗体大小 this.setSize(x_dispSize, y_dispSize); //设置窗体显示位置 this.setLocation(500, 500); //设置关闭窗体时,关闭JVM this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //设置窗体不可更改大小 this.setResizable(false); //设置窗体可见 this.setVisible(true); } }运行结果如下: