[英]Swing - get main window class instance from button class
单击特定按钮后,我需要在面板类中运行一个方法(将其称为SampleMethod
)。 在将面板添加到主窗口类实例中的某种列表时,我只是将其公开,并希望在按钮的mouseClicked
事件中对其进行访问。 那么,如何获取主窗口实例,以便获取该面板列表,获取特定的面板并使用该实例运行SampleMethod
?
当面板被添加到主窗口类实例的某种列表中时...
主窗口类实例? 看来您的主窗口只有一个实例,可以扩展JFrame
或JPanel
或JDialog
等。无论如何,您可以在应用程序中使用Singleton设计模式来获取和使用同一实例(在您的情况下为相同的主实例)。您的代码。 在Singleton模式中,我们应用该模式的类的构造函数是private ,因此您无法创建它的实例。 但是,此类还具有其单个静态实例 ,可以通过getter方法引用该实例 ,并将其用于您的代码中。 看看网上的Singleton示例,您将可以像
YourJFrame.getInstance().getPanels(10).sampleMethod()
;
在您的嵌套类和方法中,在您的情况下为mouseClicked()
。
垃圾神怎么说。 请改用ActionListener类和按钮addActionListener(),因为您只需要知道按钮是否被按下。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.