setDefaultCloseOperation

setDefaultCloseOperation

我想自定义扩展JFrame的类的关闭操作。阅读其他完成相同操作的代码示例,我发现所有使用WindowListener来实现它们的示例。为什么我们不能通过重写JFrame的setDefaultCloseOperation来做到这一点:

@Override
public void setDefaultCloseOperation(int operation) {

            super().setDefaultCloseOperation(operation);

            //DO SOME OTHER THING HERE
}

最佳答案

因为setDefaultCloseOperation可以随时调用,并且与当前帧的处理无关。它只是改变了当用户尝试通过单击框架装饰上的“关闭按钮”来关闭窗口时发生的情况。

WindowListener会告诉您框架何时实际关闭或正在关闭...

10-01 08:07