Java 如何将值从JInternalFrame传递到JDialog

Java 如何将值从JInternalFrame传递到JDialog,java,swing,jdialog,jinternalframe,Java,Swing,Jdialog,Jinternalframe,我只是想知道如何将字符串之类的值从JInternalFrame传递到JDialog。JDialog是子表单,JInternalFrame是父表单。如果你能给我举个简单的例子 这是我的代码,我想将id从ProductDetails传递到AddQuantity,我尝试使用静态,但它不起作用 public class ProductDetails extends javax.swing.JInternalFrame { String id; public ProductDetails() th

我只是想知道如何将字符串之类的值从JInternalFrame传递到JDialog。JDialog是子表单,JInternalFrame是父表单。如果你能给我举个简单的例子

这是我的代码,我想将id从ProductDetails传递到AddQuantity,我尝试使用静态,但它不起作用

public class ProductDetails extends javax.swing.JInternalFrame {
String id;
    public ProductDetails() throws Exception {
        initComponents();
}
//This is a button to go to JDialog
 private void btnAddQuantityActionPerformed(java.awt.event.ActionEvent evt) {                                               
        id = txtID.getText();
        AddQuantity aq = new AddQuantity(null, true);
        aq.setLocationRelativeTo(aq);
        aq.setVisible(true);
}
}


public class AddQuantity extends javax.swing.JDialog {
    ProductDetails pd;
    public AddQuantity(java.awt.Frame parent, boolean modal) {
        super(parent, modal);
        initComponents();
        //i use showMessage to show result but it show me nothing 
        JOptionPane.showMessageDialog(this, pd.id);
        txtCurrentID.setText(pd.id);
    }
    }

据我所知,没有具体的方法来实现这一点,但是你可以做一件事,声明数据是静态的,你也可以在对话框中访问静态的东西。所以你可以在那里展示它:

另一件事是使用“输入参数”对话框生成方法

作为JDialog的所有者传递JFrame。 调用JDialoggetOwner获取所有者 从所有者处获取所需的值
对不起,我弄错了,这是JInteralFrame而不是JFrame。我曾尝试通过super方法将JInternalFrame作为JDialog的所有者传递,但没有任何选项返回JInternalFrame,只需将其返回Framecast到JInternalFrame即可。您应该显示一些代码以获得更好的结果,并解释您希望传递的内容以及状态是否应该共享和更新。上下文不够清楚,无法获得正确答案。在使用JDialog的类的构造函数中?这不是类构造函数的用途吗?