last modified: Jun./29th/2002
HelloSwing.java
:
import java.awt.*; import javax.swing.*; public class HelloSwing { public static void main(String[] args) { // JFrame のインスタンス化 JFrame frame = new JFrame("HelloSwing"); // JLabel のインスタンス化 JLabel label = new JLabel("Hello World!"); // JFrame のコンテント・ペインの取得 Container cont = frame.getContentPane(); // コンテント・ペインに JLabel を配置 cont.add(label); // フレームのセットアップ frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.pack(); frame.setVisible(true); } }
実行例:
C:\java>javac HelloSwing.java C:\java>java HelloSwing |
|
Swing アプリケーションは、パッケージ java.awt
, javax.swing
に属するクラスを使っています。従って、この二つのパッケージに属する全てのクラスをインポートするのが簡単です。
import java.awt.*; import javax.swing.*;
Swing GUI アプリケーションでは、最低でも一つのトップレベル・コンテナが必要です。これのうえに、他のコンポーネントを配置して描画します。ここでは、 JFrame
クラスをインスタンス化しています。これはウィンドウを作るコンポーネントです。
// JFrame のインスタンス化 JFrame frame = new JFrame("HelloSwing"); ... // フレームのセットアップ frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.pack(); frame.setVisible(true);
JFrame
をインスタンス化して、 HelloSwing
というタイトルのウィンドウを作ります。
JFrame frame = new JFrame("HelloSwing");
このままでは、不可視なので、可視化します。
frame.setVisible(true);
サブコンポーネントの推奨サイズおよびレイアウトに合わせて、このウィンドウのサイズを変更します。
frame.pack();
ウィンドウのクローズ・ボタン を押すと、アプリケーションが終了するように設定します。
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
ウィンドウに配置する部品を作成します。ここでは、 JLabel
をインスタンス化してラベルを作ります。
JLabel label = new JLabel("Hello World!");
JLabel
をインスタンス化して、 Hello World!
という文字列が描画されているラベルを作っています。
作った部品をトップレベル・コンテナに配置するために、トップレベル・コンテナからコンテント・ペインというものを取得しています。これの上に部品を配置、描画します。
Container cont = frame.getContentPane();
コンテント・ペインに部品を配置します。
cont.add(label);
ここで紹介した以外に、中間コンポーネント、レイアウトマネージャ、イベント処理、スレッド作成/管理などの手続きを実装する必要があります。後続の節で順番に説明します。