1

我也在寻找解决方案。目前JFrames,我的 netbeans 项目中有 2 个和 1 个实用程序类。我不是java专家,所以请多多包涵。我试过浏览java文档和这个网站,但似乎找不到我的问题的解决方案。

这是场景:

我的启动器类启动JFrame名为MainForm.java的表单,然后将组件初始化到屏幕上。在这个表单上,我有一个按钮,可以启动一个名为ConfigEditor.java的新表单。此表单用于编辑配置文件。我在这个表单上有一个保存按钮,我基本上想要做的是,一旦我单击保存,获取MainForm.java以调用一个方法来用新值填充正确的组件。

下面是一个示例,下面是ConfigEditor.java上的 Save 按钮中的一些代码:

if(reply == JOptionPane.YES_OPTION){
        try {
            Utilities.writeConfigFileBasic(ExecutionLists.getText(),DefaultResultsFile.getText(), 
                    DefaultTestDir.getText(), Environments.getText(), ResultsViewerFile.getText());
            ConfigTextArea.append(Utilities.readConfigFile());
            JOptionPane.showMessageDialog(rootPane, "Saved");

现在就在最后一行之后,我想调用类似的东西MainForm.initMyComponents();因为这个方法存在于MainForm JFrame但它不会让我调用它。该方法的目的是使用从配置文件中提取的数据填充某些字段。很抱歉,如果我没有很好地解释它,我对 Java 还很陌生,如果您需要任何澄清,请告诉我,我会尽力澄清它。

4

1 回答 1

2

您可以在构造时简单地将 MainForm 的引用传递给 ConfigEditor 吗?例如:

... //Code fired by clicking the button you mentioned which is in class MainFrame
ConfigEditor configEditor = new ConfigEditor(this); //This would be a reference to your MainFrame

有了这个参考,你就可以在 MainFrame 类中调用你想要的方法。

于 2013-06-06T16:38:01.727 回答