这样做相当容易。您需要做的就是设置一个构造函数,在其中将框架和所需的值传递给新框架。
例如,我有 LoginScreen.java 和 DoctorScreen.java。如果我的用户成功输入他的详细信息并登录,我将通过创建该类的新实例将医生的 ArrayList 从一个 JFrame 传输到另一个 JFrame,或者更准确地说,从一个 java 类传输到另一个类
示例在这里
将数组列表从 LoginScreen.java 传递到 DoctorScreen.java
DoctorScreen dScreen = new DoctorScreen(frame, docList,d);
现在获取从 LoginScreen.java 传递的这些值并在 DoctorScreen.java 中设置它们
public DoctorScreen(JFrame frame, ArrayList<Doctor> docList, Doctor d) {
// TODO Auto-generated constructor stub
dialog = new JFileChooser(System.getProperty("user.dir"));
this.frame = frame;
this.docList = docList;
this.d = d;
initialize();
}
现在,您可以更改 DoctorScreen 构造函数以适应您尝试执行的任何项目。
我建议您采取的步骤是创建一个 Java 文件来处理您的输入,并创建第二个 Java 文件来显示您在第一个文件中输入的内容
EG:
JButton btnContinue = new JButton("Continue");
btnContinue.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
String field1 = txtrEnterYourFull.getText();
String name = nameL.getText();
String field2 = txtroptionalEnterYour.getText();
Display display = new Display(name, field1, field2);//using this as example
}
}
然后在您的 display.java 中,调用接受这些字段的构造函数并将它们显示在文本字段/文本区域或框架中的 JLabel 中
String name, field1, field2;
public Display(String name, String field1, String field2){
this.name = name;
this.field1 = field1;
this.field2 - field2;
}
请注意,这些变量已经被声明,我只是将其用于演示目的。