我正在Swing工具包中创建一个表单 当我想要关闭它时,我会转到JFrame并将其设置为可见的假 由于框架创建了表单的Java类,因此我可以从外部轻松完成。
当我有一个取消按钮时,我通常会在调用外部的表单中发送一个监听器:
Jframe.setVisible (false)
有更好的方法吗?
答案 0 :(得分:5)
SwingUtilities
类提供了获取给定组件的窗口祖先的方法。
您可以访问父窗口并调用setVisible
或dispose
,也可以只调用一个事件。
Window window = SwingUtilities.getWindowAncestor(this);
window.setVisible( false );
// OR
window.dispose();
// OR
WindowListener[] windowListeners = window.getWindowListeners();
windowListeners[0].windowClosing( null );
答案 1 :(得分:0)
如果您不需要编写太多代码,请尝试这些! click here to view image