单选按钮复选框实例

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	}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值