Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/319.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 从另一个JDialog访问父JDialog的JTextArea文本_Java_Jdialog - Fatal编程技术网

Java 从另一个JDialog访问父JDialog的JTextArea文本

Java 从另一个JDialog访问父JDialog的JTextArea文本,java,jdialog,Java,Jdialog,我有两个JDialog。第一个是名为MainJDialog的主对话框。第二个是名为ChildJDialog的子对象。我在MainJDialog中有JButton,当这样按时,它会将ChildJDialog显示在屏幕上 ChildJDialog childJDialog; childJDialog = new ChildJDialog (MainJDialog.this, true); childJDialog.setVisible(true); 另外,我在MainJDialog中有几个JTex

我有两个
JDialog
。第一个是名为
MainJDialog
的主对话框。第二个是名为
ChildJDialog
的子对象。我在
MainJDialog
中有
JButton
,当这样按时,它会将
ChildJDialog
显示在屏幕上

ChildJDialog childJDialog;
childJDialog = new ChildJDialog (MainJDialog.this, true);
childJDialog.setVisible(true);
另外,我在
MainJDialog
中有几个
JTextArea
填充了用户输入的信息

我已将
JButton
添加到
ChildJDialog
中,并希望在按下时访问当前运行的所有者
MainJDialog
的spesific
JTextArea
文本

private void getTextOfJTextArea1ButtonActionPerformed(java.awt.event.ActionEvent evt)
{                                                    
    System.out.println(ChildJDialog.this.getOwner().getClass());       
} 
结果:

class tryingproject.MainJDialog
上面的
ActionEvent
为我提供了真正的所有者
JDialog
,但我不知道如何访问它的组件

谢谢你的帮助。谢谢。

--已解决---

我在
ChildJDialog
中创建了一个构造函数,当用户调用
ChildJDialog
时,我将
MainJDialog
的jtextraea1文本作为参数传递给
ChildJDialog
,如下所示

ChildJDialog childJDialog;
childJDialog = new ChildJDialog (MainJDialog.this, true, textOfJTextArea1);
childJDialog.setVisible(true);
我在
ChildJDialog


不是我知道的确切解决方案,但目前正在工作。

但我不知道如何访问其组件。
-正如子dalog类有一个“getter”方法来获取父对话框一样,如果您想访问MainJDialog类中的组件,那么您需要创建一个“getter”方法。可能类似于
getTextComponent()
?我不能在
ChildJDialog
中实例化
MainJDialog
,因为用户在
MainJDialog
中输入一些信息到
JTextArea1
,然后按下按钮调用
ChildJDialog
。当
ChildJDialog
来到屏幕
MainJDialog
时,仍有填充的信息。我想访问这些组件以获取用户输入的文本。我知道我可以创建构造函数,将所需信息传递给
ChildJdialog
,但我不想直接传递。我想在用户按下
ChildJDialog
dinamically中的按钮时找到他们。