Bootstrap

【Java】实验五 Windows图形化界面设计

按要求设计界面布局,并实现功能

a)  窗口布局为BorderLayout;在窗口的北侧区域包含有一个文本框和一个按钮,南侧含一个下拉列表框,窗口中间区域有一个文本区。

b) 用户在文本框中输入一个数值并回车,或者点击按钮时,将文本框内的数值显示在文本区中;当用户输入“clear”的时候,清空文本区的全部内容。

c)  下拉列表框里内容自己定义,当进行下拉选择时,同样将列表框中的内容显示在文本区中

import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class Main {
  public static void main(String[]args) {
      JFrame j1 = new JFrame("窗口一");
      JTextField t1 = new JTextField(15);
      JButton b1 = new JButton("确定");
      JTextArea a1 = new JTextArea();
      JComboBox<String> c1;
      JPanel p1 = new JPanel();
      JPanel p2 = new JPanel();
      JPanel p3 = new JPanel();
      t1.addActionListener(new ActionListener() {//文本区事件监听
        public void actionPerformed(ActionEvent e) {
            String s = t1.getText().trim();
            if(s.equalsIgnoreCase("clear")) {
                a1.setText(" ");
            }
            else
                a1.append(s+ "\n");
            t1.setText(" ");
        }
      });
      
      b1.addActionListener(new ActionListener() {//确认按钮事件监听
          public void actionPerformed(ActionEvent e) {
              String s = t1.getText().trim();
              if(s.equalsIgnoreCase("clear")) {
                a1.setText(" ");
            }
            else
                a1.append(s+ "\n");
            t1.setText(" ");
          }
      });
      
      a1.setLineWrap(true);
      
      String[] s1 = {"选项一","选项二","选项三"};
      c1 = new JComboBox<>(s1);
      c1.addActionListener(new ActionListener() {//下拉列表事件监听
        public void actionPerformed(ActionEvent e) {
            String s2 = (String)c1.getSelectedItem();
            a1.append(s2  + "\n");
        }
      });
      p1.add(t1);
      p1.add(b1);
      p2.add(a1);
      p3.add(c1);
      j1.setLayout(new BorderLayout());
      j1.setSize(400,300);
      j1.setLocationRelativeTo(null);
      j1.add(p1,BorderLayout.NORTH);
      j1.add(p2,BorderLayout.CENTER);
      j1.add(p3,BorderLayout.SOUTH);
      j1.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
      j1.setVisible(true);
  }
}

;