Sér*_*els 4 java swing jdialog windowlistener
我有一个扩展JDialog的类,它有一个窗口监听器:
class MyClass extends JDialog {
public MyClass() {
setDefaultCloseOperation( JDialog.DO_NOTHING_ON_CLOSE );
addWindowListener( new WindowAdapter() {
@Override
public void windowClosing(WindowEvent e) {
System.out.println("closing...");
//do something...
}
});
}
}
Run Code Online (Sandbox Code Playgroud)
当我点击X按钮时,没有任何反应.我没有看到"关闭......"的印刷品
我错过了什么?
适合我.另请参见此相关示例.
import java.awt.EventQueue;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import javax.swing.JDialog;
class MyClass extends JDialog {
public MyClass() {
setDefaultCloseOperation(JDialog.DO_NOTHING_ON_CLOSE);
addWindowListener(new WindowAdapter() {
@Override
public void windowClosing(WindowEvent e) {
System.out.println("closing...");
//do something...
}
});
}
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
@Override
public void run() {
MyClass m = new MyClass();
m.setVisible(true);
}
});
}
}
Run Code Online (Sandbox Code Playgroud)