我正在尝试使用NetBeans编写GUI应用程序,我越来越厌倦了它。
我使用NetBeans构建了一个“Java桌面应用程序”。它将主窗体创建为org.jdesktop.application.FrameView
后代。我想知道在表单关闭时添加一些代码的正确方法是什么。
到目前为止,我目前的尝试是在构造函数中使用WindowAdapter
添加getFrame().addWindowListener
对象,但这不起作用。因为在尚未构建框架时无法调用getFrame
。我无法将其视为GUI构建器的某个事件。
答案 0 :(得分:3)
NetBeans IDE 6.9.1中提供的Java桌面应用程序仅用于历史目的,不建议在项目中使用。当我们尝试使用Java Desktop Application选项创建新项目时,NetBeans IDE 6.9.1也会显示此警告。
假设您仍在使用Swing应用程序框架并且您想要向主窗口添加一个windowClosing侦听器,那么让我回答您的问题。
创建Java桌面应用程序时,您将获得三个类(假设您键入了DesktopApplication1作为应用程序的名称):
要添加窗口关闭侦听器,请在DesktopApplication1类的configureWindow方法中编写代码,如下所示:
@Override protected void configureWindow(java.awt.Window root) {
root.addWindowListener(new WindowAdapter() {
@Override
public void windowClosing(WindowEvent e) {
// write your code here
System.out.println("Window Closing");
}
});
}
关于
Tushar Joshi,那格浦尔
答案 1 :(得分:2)
这只是Tushar答案的补充。
如果要在窗口关闭时提供确认对话框,则必须通过在ExitListener
中添加startup method
并使canExit
方法返回{来更改默认退出行为{1}}:
false