gpt4 book ai didi

java - 从另一个子JFrame发送数据到JFrame而不打开新的JFrame

转载 作者:行者123 更新时间:2023-12-01 18:06:52 25 4
gpt4 key购买 nike

我正在用java swing做一个巴士预订系统的项目。我在将数据从一个设备传递到另一个设备时遇到问题。

看到我有一个框架,我可以在其中预订座位。通过单击选择按钮,数据将存储在文本字段中,并将作为所选座位发送到主机。

enter image description here

主框架是

enter image description here

但是我有一个问题,每当我单击选择按钮时,旧框架就不会打开。它打开一个新框架。我该如何解决这个问题。从打开新框架开始。

框架座位选择代码为

private void selectbuttonActionPerformed{
String seats = seatstf.gettext();
new Billing(seats).setVisible(true);
this.dispose();
}

主框架计费代码为

public Billing(String seats){
initComponents();
This.seatvar = seats;
Seattf.setText(""+seatvar);
}

其中 new Billing(seats).setVisible(true); 打开一个新的计费框架,而不打开文本字段中需要数据的旧计费框架。

怎么解决呢?

最佳答案

使用new Billing,您可以创建一个框架实例,这当然会打开一个新框架。将框架保存为实例变量并使用它。

public class SeatFrame extends JFrame {
private Billing parent;

public SeatFrame(Billing parent) {
this.parent = parent;
// TODO init Frame (add Components etc.)
}

...

private void selectbuttonActionPerformed(){
String seats = seatstf.gettext();
parent.setSeats(seats);
parent.setVisible(true);
this.dispose();
}

...

}

计费类应如下所示:

...

public Billing(){
initComponents();
}

public void setSeats(String seats){
this.seatvar = seats;
Seattf.setText(seatvar);
}

public void openSeatFrame(){
new SeatFrame(this).setVisible(true);
this.dispose();
}

....

关于java - 从另一个子JFrame发送数据到JFrame而不打开新的JFrame,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60545563/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com