Java6学习笔记19——利用Swing创建单选按钮

本文介绍了一个使用Java Swing实现的单选按钮示例程序。该程序通过JRadioButton组件创建了四个单选按钮,并使用ButtonGroup确保同一时间内只能选择一个选项。程序还实现了ActionListener接口来响应用户的选择变化,并在界面上显示被选中的按钮。

import javax.swing.JFrame;
import javax.swing.JRadioButton;
import javax.swing.JLabel;
import javax.swing.BoxLayout;
import javax.swing.ButtonGroup;
import java.awt.Container;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import java.awt.event.WindowEvent;
import java.awt.event.WindowAdapter;

public class RadioDemo extends JFrame implements ActionListener {
JLabel label;
JRadioButton buttonA;
JRadioButton buttonB;
JRadioButton buttonC;
JRadioButton buttonD;
public static void main(String arg[]) {
new RadioDemo();
}
public RadioDemo() {
addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0);
}
} );
setLocation(250,150);
Container pane = getContentPane();
pane.setLayout(new BoxLayout(pane,BoxLayout.Y_AXIS));

ButtonGroup group = new ButtonGroup();//单选按钮分组以保证单一选择

label = new JLabel("A");
pane.add(label);

buttonA = new JRadioButton("Aardvark");
buttonA.setSelected(true);
buttonA.addActionListener(this);
group.add(buttonA);
pane.add(buttonA);

buttonB = new JRadioButton("Baracuda");
buttonB.setSelected(false);
buttonB.addActionListener(this);
group.add(buttonB);
pane.add(buttonB);

buttonC = new JRadioButton("Condor");
buttonC.setSelected(false);
buttonC.addActionListener(this);
group.add(buttonC);
pane.add(buttonC);

buttonD = new JRadioButton("Daryll");
buttonD.setSelected(false);
buttonD.addActionListener(this);
group.add(buttonD);
pane.add(buttonD);

pack();
setVisible(true);
}
public void actionPerformed(ActionEvent e) {
String text = "";
if(buttonA.isSelected())
text = "A";
else if(buttonB.isSelected())
text = "B";
else if(buttonC.isSelected())
text = "C";
else if(buttonD.isSelected())
text = "D";
label.setText(text);
Object obj = e.getSource();
if(obj == buttonA)
System.out.println("buttonA");
if(obj == buttonB)
System.out.println("buttonB");
if(obj == buttonC)
System.out.println("buttonC");
if(obj == buttonD)
System.out.println("buttonD");
}
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值