package package16;
002 import java.awt.*;
003 import java.awt.event.*;
004 import javax.swing.*;
005
006
007 public class Sample7_10 extends JFrame implements ActionListener{
008 //创建面板
009 private JPanel jp= new JPanel();
010
011 //创建复选框数组
012 private JCheckBox [] jcbArray={new JCheckBox("交友"),new JCheckBox("户外"),new JCheckBox("购物"),
013 new JCheckBox("旅游"),new JCheckBox("其他")};
014
015 //创建单选按钮数组
016 private JRadioButton[] jrbArray = {new JRadioButton("5-15岁"),new JRadioButton("16-25岁",true),
017 new JRadioButton("26-35岁"),new JRadioButton("36-45"),new JRadioButton("46-55岁")};
018
019 //创建按钮数组
020 private JButton[] jbArray = {new JButton("提交"),new JButton("清空")};
021
022 //创建标签数组
023 private JLabel[] jlArray = {new JLabel("年龄段:"),new JLabel("兴趣爱好:"),new JLabel("调查结果为:")};
024
025 //创建文本框
026 private JTextField jtf = new JTextField();
027
028 //创建按钮组
029 private ButtonGroup bg = new ButtonGroup();
030
031
032 public Sample7_10(){
033
034 //设置布局管理器
035 jp.setLayout(null);
036
037 //对各个控件进行设置
038 for(int i=0;i<5;i++){
039 //设置单选按钮与复选按钮的大小位置
040 jrbArray[i].setBounds(40+i*100,40,80,30);
041 jcbArray[i].setBounds(40+i*120,100,120,30);
042
043 //将单选按钮与复选按钮添加到JPanel中
044 jp.add(jrbArray[i]);
045 jp.add(jcbArray[i]);
046
047 //为单选按钮与复选框注册动作事件监听器
048 jrbArray[i].addActionListener(this);
049 jcbArray[i].addActionListener(this);
050
051 //将单选按钮添加到按钮组中
052 bg.add(jrbArray[i]);
053
054 //设置标签与普通按钮的大小位置
055 if(i>1){
056 continue;
057 } //continue后的语句不在执行。。
058 jlArray[i].setBounds(20,20+i*50,80,30);
059 jbArray[i].setBounds(400+i*120,200,80,26);
060
061 //将标签与普通按钮添加到JPanel中
062 jp.add(jlArray[i]);
063 jp.add(jbArray[i]);
064
065 //为普通按钮注册动作事件监听器。
066 jbArray[i].addActionListener(this);
067
068 }
069
070 //设置调查结果标签的大小位置,并将其添加到JPanel中
071 jlArray[2].setBounds(20,150,120,30);
072 jp.add(jlArray[2]);
073
074 //设置文本框的大小位置
075 jtf.setBounds(120,150,500,26);
076 jp.add(jtf);
077 jtf.setEditable(false);
078
079 //将JPanel添加进窗体
080 this.add(jp);
081 //设置窗体的标题,大小位置,以及可见性
082 this.setTitle("个人信息调查");
083 this.setBounds(100,100,700,280);
084 this.setVisible(true);
085
086 //是否可以设置大小
087 this.setResizable(false);
088 this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
089 }
090
091 public void actionPerformed(ActionEvent e){
092 if(e.getSource()==jbArray[1]){//清空
093 for(int i = 0;i<jcbArray.length;i++){
094 jcbArray[i].setSelected(false);
095 }
096 jtf.setText("");
097 }
098 else if(e.getSource()==jbArray[0]){
099 if(jtf.getText()!=""){ //??????
100 System.out.println("提交成功");
101 }
102
103 }
104 else{
105 //其他按钮
106 StringBuffer temp1 = new StringBuffer("你是一个");
107 StringBuffer temp2 = new StringBuffer();
108
109 for(int i = 0;i<5;i++){
110 if(jrbArray[i].isSelected()){
111 temp1.append(jrbArray[i].getText());
112 }
113
114 //获得爱好的选中值
115 if(jcbArray[i].isSelected()){
116 temp2.append(jcbArray[i].getText()+",");
117 }
118
119 }
120 //打印结果
121 if(temp2.length()==0){
122 jtf.setText("兴趣爱好选项不能为空!!");
123 }
124 else{
125 temp1.append("的人,你比较喜欢");
126 temp1.append(temp2.substring(0,temp2.length()-1));
127 jtf.setText(temp1.append("。").toString());
128 }
129 }
130 }
131 public static void main(String[]args){
132 new Sample7_10();
133 }
134
135 }
单选按钮复选框实例
最新推荐文章于 2021-05-26 18:48:14 发布