java swing单选复选框_swing学习4--添加单选、复选框并获取其中的值

本文展示了如何在Java Swing应用程序中创建并管理单选按钮(JRadioButton)和复选框(JCheckBox)。通过ButtonGroup实现单选按钮的互斥选择,并演示了如何监听按钮事件,获取选中复选框和单选按钮的值。
摘要由CSDN通过智能技术生成

package swing;

import java.awt.Component;

import java.awt.GridLayout;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import javax.swing.ButtonGroup;

import javax.swing.JButton;

import javax.swing.JCheckBox;

import javax.swing.JFrame;

import javax.swing.JPanel;

import javax.swing.JRadioButton;

public class Test1 {

private static JPanel pane1,pane2 ;

public static void main(String[] args) {

JFrame frame = new JFrame("复选框");

frame.setSize(200,200);

//设置窗口布局

frame.setLayout(new GridLayout(3,1));

frame.setLocation(500,200);

pane1 = new JPanel();

pane2 = new JPanel();

JPanel pane3 = new JPanel();

//创建复选框组件

JCheckBox jcb1 = new JCheckBox("足球");

JCheckBox jcb2 = new JCheckBox("篮球");

JCheckBox jcb3 = new JCheckBox("棑球");

//创建单选框组件

JRadioButton jrb1 = new JRadioButton("男");

JRadioButton jrb2 = new JRadioButton("nv ");

//创建单选框按钮组

ButtonGroup bg = new ButtonGroup();

JButton jb = new JButton("按钮");

pane3.add(jb);

pane1.add(jcb1);

pane1.add(jcb2);

pane1.add(jcb3);

//将单选框组件加入单选框按钮组,否则两个都可以选择

bg.add(jrb1);

bg.add(jrb2);

pane2.add(jrb1);

pane2.add(jrb2);

frame.add(pane1);

frame.add(pane2);

frame.add(pane3);

frame.setVisible(true);

//按钮监听事件

jb.addActionListener(new ActionListener(){

@Override

public void actionPerformed(ActionEvent e) {

// TODO Auto-generated method stub

String info ="";

//通过面板属性名获取到该面板上的所有组件

for(Component c:pane1.getComponents()){

//通过 instanceof方法筛选复选框组件

if(c instanceof JCheckBox){

//判断复选框组件是否被选中

if(((JCheckBox) c).isSelected()){

//获取该复选框组件信息

info += ((JCheckBox)c).getText();

}

}

}

System.out.println(info);

info="";

for(Component c:pane2.getComponents()){

if(c instanceof JRadioButton){

if(((JRadioButton) c).isSelected()){

info += ((JRadioButton)c).getText();

}

}

}

System.out.println(info);

}

});

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值