「X」をクリックして、JFrameを閉じる前にプログラムにコードを実行させる方法があるかどうか疑問に思っていました。 setDefaultCloseOperation()
メソッドは整数のみを取ります。
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
WindowListener
の使用に興味があるかもしれません。 WindowListener
チュートリアル 。
this.addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e){
int i=JOptionPane.showConfirmDialog(null, "Seguro que quiere salir?");
if(i==0)
System.exit(0);//cierra aplicacion
}
});
@Jeffreyには良い答えがありますが、何をしようとしているのかを考慮する必要があります。フレームを閉じたときに何かしたい場合は、WindowListenerが最適です。ただし、クリーンアップと適切なシャットダウンを行う場所を探している場合は、代わりに shutdown hook が必要になるでしょう。 WindowListenerを使用すると、コードは、ユーザーが「Xをクリックする」ことによってのみトリガーされます。しかし、ユーザーが端末のフォアグラウンドでアプリを起動し、Ctrl + Cで強制終了するとどうなりますか?ユーザーがコマンドラインまたはタスクマネージャーからプロセスを強制終了した場合はどうなりますか?