编写一个JFrame窗口

来源:互联网 发布:淘宝评价语100字复制 编辑:程序博客网 时间:2024/04/27 17:18
作业:编写一个JFrame窗口,要求如下:1. 在窗口的NORTH区放置一个JPanel面板。2. JPanel面板放置如下组件:(1) JLable标签,标签文本为“兴趣”,右边接着是三个JCheckBox多选按钮,选项分别是“羽毛球”、“乒乓球”、“唱歌”。可以多选。(2) JLabel标签,标签文本为“性别”,右边接着是两个JRadioButton按钮,选项分别是“男”、“女”。置成单选按钮,提示:使用ButtonGroup类 。(3) 兴趣标签及按钮放在第一行,性别标签及按钮放在第二行,分别借助两个行型Box容器安排这两行组件的位置,而两个行型Box容器放入JPanel面板中,要两行组件对齐的话,可以把JPanel面板设置两行一列的GridLayout布局。3. 窗口的CENTER区域放置一个JScrollPane容器,容器中放置一个JTextArea文本域。4. 当点击JCheckBox多选按钮和JRadioButton按钮时,如果是选中操作,则把选中项的文本显
package javaaa; import java.awt.*;  import java.awt.event.*;  import javax.swing.*;      public class test6 extends JFrame implements ActionListener {                JLabel Label1 = new JLabel("兴趣:");                JCheckBox yumaoCheck = new JCheckBox("羽毛球");            JCheckBox tennisCheck = new JCheckBox("乒乓球");            JCheckBox singCheck = new JCheckBox("唱歌");             JLabel Label2 = new JLabel("性别:");           JRadioButton Button1 = new JRadioButton("男");           JRadioButton Button2 = new JRadioButton("女");             JTextArea textArea = new JTextArea(10,30);             test6()           {                super("JFrame窗口");                Container contentPane = getContentPane();                         JPanel northPanel = new JPanel();                northPanel.setLayout(new GridLayout(2,1));                    Box box1 = Box.createHorizontalBox();                Box box2 = Box.createHorizontalBox();                            box1.add(Box.createHorizontalStrut(3));                box1.add(Label1 );                box1.add(yumaoCheck );                box1.add(tennisCheck );                box1.add(singCheck);                          ButtonGroup group = new ButtonGroup();                group.add(Button1);                group.add(Button2);                   box2.add(Box.createHorizontalStrut(3));                         box2.add(Label2);                box2.add(Button1);                box2.add(Button2);                           northPanel.add(box1);                 northPanel.add(box2);                contentPane.add(northPanel, BorderLayout.NORTH);                           JScrollPane scrollPane = new JScrollPane(textArea);                contentPane.add(scrollPane, BorderLayout.CENTER);                  yumaoCheck.addActionListener(this);                 tennisCheck.addActionListener(this);                 singCheck.addActionListener(this);                Button1.addActionListener(this);                Button2.addActionListener(this);                    setVisible(true);                setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);                setSize(400, 300);           }              public void actionPerformed(ActionEvent e)           {                if(e.getSource() == yumaoCheck)                {                    if(yumaoCheck.isSelected() == true)                    {                         textArea.append("羽毛球" + "\n");                     }                }                  else if(e.getSource() == tennisCheck)                {                    if(tennisCheck.isSelected() == true)                    {                         textArea.append("乒乓球" + "\n");                     }                          }                 else if(e.getSource() == singCheck)                {                    if(singCheck.isSelected() == true)                    {                         textArea.append("唱歌" + "\n");                     }                 }                else if(e.getSource() == Button1)                {                   if(Button1 .isSelected() == true)                   {                         textArea.append("男" + "\n");                    }                 }                  else if(e.getSource() == Button2)                {                   if(Button2 .isSelected() == true)                   {                         textArea.append("女" + "\n");                    }                 }                else                {                      return;                 }           }             public static void main(String args[])           {                new test6();           }  }