Swing java,使用菜单时关闭特定窗口
我有一个类,它创建了一个包含所有菜单项等的菜单,然后我有许多UI,它们有一个JMenu,我在其中给出了第一个类的JMenu。我的问题是,菜单中有许多项可以打开其他UI,如何进行检查以打开其中一个,关闭当前窗口 我所做的一个非常简短的版本是: 菜单: 用户界面:Swing java,使用菜单时关闭特定窗口,java,swing,Java,Swing,我有一个类,它创建了一个包含所有菜单项等的菜单,然后我有许多UI,它们有一个JMenu,我在其中给出了第一个类的JMenu。我的问题是,菜单中有许多项可以打开其他UI,如何进行检查以打开其中一个,关闭当前窗口 我所做的一个非常简短的版本是: 菜单: 用户界面: 请注意,这只是为了了解其想法,代码要复杂得多,但无法显示。我这样做的原因是我有一个巨大的菜单,它会向所有UI添加大量可重复的代码。假设每个窗口都有自己的菜单栏,那么您可以使用中的ExitAction类。使用camickr提供的代码,我对这
请注意,这只是为了了解其想法,代码要复杂得多,但无法显示。我这样做的原因是我有一个巨大的菜单,它会向所有UI添加大量可重复的代码。假设每个窗口都有自己的菜单栏,那么您可以使用中的
ExitAction
类。使用camickr提供的代码,我对这个问题做了一个完美的修复,只需在另一帧加载时关闭第一帧的可见性,这样系统就不会关闭,因为ExitAction代码在其他任何东西出现之前就关闭了。代码如下:
for (Window frame : Window.getWindows())
{
if (frame.isActive())
{
frame.setVisible(false);
}
}
希望它能帮助人们谢谢你的帮助,我修改了代码,使之适用于任何有我问题的人。应该没有必要更改退出。如果希望在单击“X”按钮时帧不可见,则应使用
frame.setdeafultcloseoperation(JFrame.HIDE_ON_CLOSE)代码>当您创建JFrame.well时,我发现这种方法也很有效,所以我希望如果其他人发现了这种方法,他们会看到代码和您放置的链接,并发现它们很有用,再次感谢。
public UI()
{
JMenuBar menu = Menu.makeMenu();
}
for (Window frame : Window.getWindows())
{
if (frame.isActive())
{
frame.setVisible(false);
}
}