import javax.swing.*;
import java.awt.event.*;
public class Test {
Test() {
JFrame f=new JFrame("CloseIt");
f.setVisible(true);
f.setSize(400,200);
f.setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
f.addWindowListener(new WindowAdapter(){
public void WindowClosing(WindowEvent e)
{
System.out.print("In Windowclosing opr");
f.dispose();
}
});
}
public static void main(String arg[]) {
Test t=new Test();
}
}
我实际上想问用户在关闭文件之前是否要保存文件。
但是每当我关闭框架(十字按钮)时,都不会发生任何事情。
windowClosing()
甚至没有被调用。 最佳答案
您将方法命名为WindowClosing()
。
但是,被调用的方法是windowClosing()
。
最好的建议是使用@Override
注释方法,以便编译器知道您要覆盖方法,并且如果您的方法未覆盖超类方法,则可能会产生错误消息:
f.addWindowListener(new WindowAdapter(){
@Override
public void windowClosing(WindowEvent e)
{
...
}
});