我找到了similar question,但对我来说仍然不清楚。
所以,我有一个主类ProcessorCalculations(),我从中调用MainFrame()类。在MainFrame类中,用户应该选择该文件夹。如何将JFileChooser()对象从MainFrame()传输到ProcessorCalculations()?
我试图通过上面的链接实现提示:
ProcessorCalculation processor = new ProcessorCalculation();
MainFrame mainFrame = new MainFrame(processor);
但我不知道如何在不创建新对象的情况下从processor
调用mainFrame
方法。
即使我不知道我应该问Google的正确问题。
请帮助。
答案 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}}对象那里)它返回你在这个类中想要的数据。
如果您仍然遇到问题,请索取我将要做的编码解决方案。