Java JFrame和另一个类交互

时间:2012-07-28 03:41:38

标签: java interaction

我找到了similar question,但对我来说仍然不清楚。

所以,我有一个主类ProcessorCalculations(),我从中调用MainFrame()类。在MainFrame类中,用户应该选择该文件夹。如何将JFileChooser()对象从MainFrame()传输到ProcessorCalculations()?

我试图通过上面的链接实现提示:

   ProcessorCalculation processor = new ProcessorCalculation();
   MainFrame mainFrame = new MainFrame(processor);

但我不知道如何在不创建新对象的情况下从processor调用mainFrame方法。 即使我不知道我应该问Google的正确问题。 请帮助。

2 个答案:

答案 0 :(得分:2)

如果您正在使用上面编写的代码,那么您将当前处理器实例传递到MainFrame构造函数中。你在这个构造函数中使用引用做了什么?您是否将ProcessorCalculation实例设置为此引用?请告诉我们你的构造函数。

您的MainFrame类应该看起来像......

public class MainFrame extends JFrame {
   // your ProcessorCalculation field  
   private ProcessorCalculation processor;

   public MainFrame(ProcessorCalculation processor) {
      // set the field with ref passed in parameter
      this.processor = processor; 

      // of course other code goes here
   }

   public void someMainFrameMethod() {
      // use the reference
      processor.someProcessorMethod();
   }

}

答案 1 :(得分:2)

在大型机中创建一个属性,例如files,引用JFileChooser()的内容(您可以说内容存储在此属性中)。如果这个属性是私有的,那么当你编写ProcessorCalculation(你已经创建了对象{mainFrame.getFiles()时,将此属性的大型机中的getter setter方法(以使其可以从其他类访问)现在返回到mainFrame类{1}}对象那里)它返回你在这个类中想要的数据。

如果您仍然遇到问题,请索取我将要做的编码解决方案。

相关问题