ゲーム専門学校 ゲームプログラム入門 JavaGUI編

(3)swingによるJavaアプリケーション(Windowsアプリケーション)

(a) swingによる雛形

Samp04.java
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class Samp04 extends JFrame {
        public static void main(String args[]) {
                // MyFirstJavaオブジェクトを作成する
                Samp04 window = new Samp04();
                // ウィンドウのサイズを指定する
                window.setSize(400, 200);
                // ウィンドウリスナを登録、実装する
                window.addWindowListener(
                        new WindowAdapter() {
                                // ウィンドウの終了手続き
                                public void windowClosing(WindowEvent e) {
                                        System.exit(0);
                                }
                        }
                );
                // ウィンドウを表示する
                window.setVisible(true);
        }
        // MyFirstJavaクラスのデフォルトコンストラクタを実装する
        Samp04() {
                super("swingによるウインドウ");
        }
        // 再描画メソッドをオーバーライドする
        public void paint(Graphics g) {
                // まず最初に、JFrameクラスの基本動作を実現する
                super.paint(g);
                String str = "swingによるJavaアプリケーション";
                g.drawString(str, 20, 50);
        }
}

《解説》

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
swingに必要なパッケージjavax.swingをインポートする。
java.awtjava.awt.eventのパッケージも必要である。
public class Samp04 extends JFrame {
swingではFrameクラスでなく、JFrameクラスを利用しウインドウを作成する。
                // まず最初に、JFrameクラスの基本動作を実現する
                super.paint(g);
                String str = "swingによるJavaアプリケーション";
                g.drawString(str, 20, 50);
swingのpaintメソッドをオーバーライトすると画像が壊れてしまう場合がある。
ので、まずJFrameクラスのpaintメソッドを実行した後、独自のpaintメソッドを実行するように記述する。
inserted by FC2 system