在java中,假设我有一个JFrame(比如JFrame2),它是通过单击第一个Jframe(JFrame1)上的按钮创建的。 如何在不创建第一帧(Jframe1)的新实例的情况下将第二个(Jframe2)中的选定值返回到第一个值。
即我想让Jframe2成为JFrame1的子表单。就像JOptionFrame.showMessageDialog()
返回值一样。
答案 0 :(得分:0)
我无法在此处测试我的代码,因此您可能需要修复一些问题。
基本上,您可以将实例从第1帧传递到第2帧。
class CustomFrame extends JFrame {
private CustomFrame parent;
public int someField;
public CustomFrame(CustomFrame parent) {
this.parent = parent;
}
private void someLogic() {
// some logic
//udpate parent;
parent.someField = 10;
}
public static void main(String args[]) {
CustomFrame parent = new CustomFrame(null);
CustomFrame child = new CustomFrame(parent);
child.someLogic();
}
}
如果您需要在关闭孩子后执行某些代码,建议您将JDialog
与setModal(true)