ウインドウを作る

まず最も基本となるGUIアプリケーションを作る。

//sample1クラス

//パッケージの宣言
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;
import java.lang.*;

class sample1 {
	public static void main(String[] args){
		JFrame frame = new JFrame();
		//ウィンドウサイズ指定
		frame.setSize(500, 300);
		//ウィンドウを見える状態にする
		frame.setVisible(true);
	}
}

これが最も基本であり、一番簡単なGUIプログラミングである。
ところが、これではウィンドウのクローズボタンを押しても、ウィンドウは消えますがJava実行環境では
終了しないので、この場合は強制終了をしなければならない。
Swingアプリケーションを正常に終了させるには、終了処理プログラムを追加しなければならない。
ここでイベント処理というものが出てくる。



イベント処理とは

JavaではGUIを作成し、プログラムでその処理を簡単に行うことが出来る。
GUIの部品に対して、マウスなどでの操作(イベント)が行われたときに、そのイベントをプログラムとしてどう処理するかを
書いたものがイベント処理と言う。
このGUI部品には次のものがある。

  • ボタン
  • チョイス
  • チェックボックス
  • テキストフィールド
  • テキストエリア
  • リスト
  • ポップアップメニュー

    ではこのイベント処理使って先ほど作ったウィンドウを正常に終了させる。
    以下のプログラムを"sample1"に追加する。
    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;
    import javax.swing.event.*;
    import java.lang.*;
    
    class sample1 {
    	public static void main(String[] args){
    		JFrame frame = new JFrame();
    		frame.setSize(500, 300);
    		frame.setVisible(true);
    	
    frame.addWindowListener(new WindowAdapter(){
    	public void windowClosing(WindowEvent e) {
    		System.exit(0);
    	}
    });
       
    ここではWindowAdapterのサブクラスの中にwindowClosing()というメソッドを用意し、System.exit(0);を実行する。
    つまり、終了時のイベント(×ボタンを押す)が発生すると、このwindowClosing()メソッドが呼び出されるのである。