1. 程式人生 > >編寫一個JFrame視窗,要求如下: 1. 在視窗的NORTH區放置一個JPanel面板。

編寫一個JFrame視窗,要求如下: 1. 在視窗的NORTH區放置一個JPanel面板。

編寫一個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按鈕時,如果是選中操作,則把選中項的文字顯示在JTextArea文字域,每行顯示一個選項。可以重複點選,每次點選都顯示選中項

package bzu.jf;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class ll extends JFrame implements ActionListener{
	JLabel jlabel=new JLabel("興趣:");
	JLabel jlabel1=new JLabel("性別:");
	JCheckBox jCheckBox1=new JCheckBox("羽毛球");
    JCheckBox jCheckBox2=new JCheckBox("乒乓球");
    JCheckBox jCheckBox3=new JCheckBox("唱歌");
    JRadioButton jRadioButton1=new JRadioButton("男");
    JRadioButton jRadioButton2=new JRadioButton("女");
    JTextArea jTextArea=new JTextArea();
      public ll(){
    	  Container container=getContentPane();
    	  JPanel jpanel=new JPanel();
          jpanel.setLayout(new GridLayout(2,1));
          Box box1,box2;
          box1=Box.createHorizontalBox();
          box2=Box.createHorizontalBox();
          box1.add(Box.createHorizontalStrut(3));
          box1.add(jlabel);
          box1.add(jCheckBox1);
          box1.add(jCheckBox2);
          box1.add(jCheckBox2);
          ButtonGroup buttonGroup=new ButtonGroup();
          buttonGroup.add(jRadioButton1);
          buttonGroup.add(jRadioButton2);
          box2.add(Box.createHorizontalStrut(3));
          box2.add(jlabel1);
          box2.add(jRadioButton1);
          box2.add(jRadioButton2);
          jpanel.add(box1);
          jpanel.add(box2);
          container.add(jpanel, BorderLayout.NORTH);
          JScrollPane jScrollPane=new JScrollPane(jTextArea);
          container.add(jScrollPane, BorderLayout.CENTER);
          jCheckBox1.addActionListener(this);
          jCheckBox2.addActionListener(this);
          jCheckBox3.addActionListener(this);
          jRadioButton1.addActionListener(this);
          jRadioButton2.addActionListener(this);
          setDefaultCloseOperation(EXIT_ON_CLOSE);
          setSize(500,400);
          setVisible(true);
      }
      public void actionPerformed(ActionEvent e){
          if(e.getSource()==jCheckBox1){
              if(jCheckBox1.isSelected()==true){
                  jTextArea.append("羽毛球"+"\n");
              } 
          }else if(e.getSource()==jCheckBox2){
              if(jCheckBox2.isSelected()==true){
                  jTextArea.append("乒乓球"+"\n");
              }
          }else if(e.getSource()==jCheckBox3){
              if(jCheckBox3.isSelected()==true){
                  jTextArea.append("唱歌"+"\n");
              }
          }else if(e.getSource()==jRadioButton1){
              if(jRadioButton1.isSelected()==true){
                  jTextArea.append("男"+"\n");
              }
          }else if(e.getSource()==jRadioButton2){
              if(jRadioButton2.isSelected()==true){
                  jTextArea.append("女"+"\n");
              }
          }else {
              return;
          }
      }
   public static void main(String[] args) {
           new Sci();
      }
      }