需要帮助在另一个框架上显示 Java 表单的输入

Need help to display inputs of a Java's form on an other frame

所以我尝试在表单中输入一些数据,并在单击按钮时存储它们以将它们显示在数组中 "Show" 但我不知道该怎么做。

这是我的表格:

import java.awt.*;
import java.awt.event.*;

public class test {
    public static void main(String[] args) {
        Frame frm=new Frame("Add employee");
        Label lbl = new Label();
        frm.add(lbl);
        frm.setSize(350,200);
        frm.setVisible(true);
        frm.addWindowListener(new WindowAdapter(){
            public void windowClosing(WindowEvent e){
                System.exit(0);
            }
        });
        Panel p = new Panel();
        Panel p1 = new Panel();
        Label jFirstName = new Label("first name");
        TextField lFirstName = new TextField(20);
        Label jLastName =new Label("last name");
        TextField lLastName=new TextField(20);
        Label jAge= new Label("Age");
        TextField lAge = new TextField(20);
        Label jDate =new Label("Date");
        TextField lDate=new TextField(20);
        Label jType = new Label("employee type");
        TextField lType = new TextField(20);
        p.setLayout(new GridLayout(7,1));



        p.add(jFirstName);
        p.add(lFirstName);
        p.add(jLastName);
        p.add(lLastName);
        p.add(jAge);
        p.add(lAge);
        p.add(jDate);
        p.add(lDate);
        p.add(jType);
        p.add(lType);

        Button Submit=new Button("Submit");
        p.add(Submit);
        p1.add(p);
        frm.add(p1,BorderLayout.NORTH);
    }
}

你有什么想法吗?

试试下面的代码。我从您的代码开始并对其进行了修改。很少有我会 suggest/point:

考虑使用 Swing 而不是 AWT(例如 JFrame 而不是 Frame)。摇摆更丰富。 尝试将代码分成单独的 类 而不是在 main() 方法中编写所有内容。 我删除了面板 p1,因为它是多余的。

public class Test
{
  public static void main(String[] args)
  {
    final Frame frm=new Frame("Add employee");
    Label lbl = new Label();
    frm.add(lbl);
    frm.setSize(350,200);
    frm.setVisible(true);
    frm.addWindowListener(new WindowAdapter(){
      public void windowClosing(WindowEvent e){
        System.exit(0);
      }
    });
    Panel p = new Panel();
    //Panel p1 = new Panel();
    final Label jFirstName = new Label("first name");
    final TextField lFirstName = new TextField(20);
    final Label jLastName =new Label("last name");
    final TextField lLastName=new TextField(20);
    final Label jAge= new Label("Age");
    final TextField lAge = new TextField(20);
    final Label jDate =new Label("Date");
    final TextField lDate=new TextField(20);
    final Label jType = new Label("employee type");
    final TextField lType = new TextField(20);
    p.setLayout(new GridLayout(7,1));

    p.add(jFirstName);
    p.add(lFirstName);
    p.add(jLastName);
    p.add(lLastName);
    p.add(jAge);
    p.add(lAge);
    p.add(jDate);
    p.add(lDate);
    p.add(jType);
    p.add(lType);

    Button Submit=new Button("Submit");

    Submit.addActionListener(new ActionListener()
    {
      @Override
      public void actionPerformed(ActionEvent e)
      {
        String[] formData = new String[5];
        formData[0] = jFirstName.getText() + ": " + lFirstName.getText();
        formData[1] = jFirstName.getText() + ": " + lLastName.getText();
        formData[2] = jAge.getText() + ": " + lAge.getText();
        formData[3] = jDate.getText() + ": " + lDate.getText();
        formData[4] = jType.getText() + ": " + lType.getText();

        TextArea textArea = new TextArea();
        StringBuilder sb = new StringBuilder();
        for (int i = 0; i < formData.length; i++)
        {
          sb.append(formData[i]);
          sb.append("\n");
        }
        textArea.setText(sb.toString());

        final Dialog dialog = new Dialog(frm, "Form Data");
        dialog.setModal(true);
        dialog.addWindowListener(new WindowAdapter()
        {
          @Override
          public void windowClosing(WindowEvent e)
          {
            dialog.setVisible(false);
          }
        });
        dialog.add(textArea);
        dialog.pack();
        dialog.setVisible(true);
      }
    });

    p.add(Submit);
    //p1.add(p);
    frm.add(/*p1*/p,BorderLayout.NORTH);
  }
}