ExitableFrame.java
import java.awt.*;
import java.awt.event.*;
/** ウィンドウの終了でプログラムを終了する
ExitableFrame クラス */
public class ExitableFrame extends Frame
implements WindowListener {
/** コンストラクタ */
public ExitableFrame() {
super( "Exitable Frame Test" );
addWindowListener( this );
}
public ExitableFrame( String title ) {
super( title );
addWindowListener( this );
}
/** 起動時に呼び出されるメソッド */
public static void main( String argv[] ) {
ExitableFrame frame = new ExitableFrame();
frame.setSize( 400, 300 );
frame.setVisible( true );
}
/** WindowEvent を処理するメソッド */
public void windowClosed( WindowEvent evt ){
System.out.println("window closed");
System.out.println("system exit");
System.exit(0); // システムの終了
}
public void windowClosing( WindowEvent evt ){
System.out.println("window closing");
dispose(); // フレームの廃棄
}
public void windowOpened( WindowEvent evt ){
System.out.println("window opened");
}
public void windowIconified( WindowEvent evt ){
System.out.println("winodw iconified");
}
public void windowDeiconified( WindowEvent evt ){
System.out.println("window deiconified");
}
public void windowActivated( WindowEvent evt ){
System.out.println("window activated");
}
public void windowDeactivated( WindowEvent evt ){
System.out.println("window deactivated");
}
}