学生向けプログラミング入門 | 無料

学生向けにプログラミングを無料で解説。Java、C++、Ruby、PHP、データベース、Ruby on Rails, Python, Django

Java | 26 | Frameの応用

↓↓クリックして頂けると励みになります。



25 | クラス分割の応用】 << 【ホーム】 >> 【27 | 図形描画


複数のフレーム(Frame)を表示させるプログラム
複数のフレーム(Frame)を表示させるプログラム




Javaには「Java® Platform, Standard Edition & Java Development Kit
バージョン21 API仕様
」があり、使用できるパッケージの種類や使用方法を調べることが出来ます。


ここからはパッケージの使用方法をいろいろ紹介していきます。


プログラムの中にコメントで説明を入れています。
いくつか種類がありますので説明しておきます。


/**」から「*/」までの間にコメントを記述します。
説明文には複数の分を記述することができます。

/**
 *
 *  この間にコメントを記述します。
 *  説明文には複数の分を記述することができます。
 *
 */



/*」から「*/」までの間にコメントを記述します。
説明文には複数の分を記述することができます。

/*
  この間にコメントを記述します。
  説明文には複数の分を記述することができます。
*/

/* この間にコメントを記述します。 */



//」の後から改行までがコメントとなります。

// ここにコメントを記述します。



Visual Studio Codeで以下のプログラム「AwtFrameTest.java」を作成します。


新規作成 【AwtFrameTest.java】

import java.awt.*;

public class AwtFrameTest {

	/** Frameのインスタンスをfで参照する */
	private Frame f;
    
	/**
	* コンストラクタ。指定されたフレームタイトルでFrameを生成
	* 引数 titleはフレームタイトル
	*/
	public AwtFrameTest(String title) {
		
		f = new Frame(title);
	}

	/**
	* フレームを指定されたタイトルに設定
	* width 幅
	* height 高さ
	*/
	public void mySetSize(int width, int height) {

		f.setSize(width, height);
	}

	/** main() */
	public static void main(String[] args) {

		//コンストラクタに引数を指定
		AwtFrameTest f1 = new AwtFrameTest("FrameTest1");
		AwtFrameTest f2 = new AwtFrameTest("FrameTest2");
		AwtFrameTest f3 = new AwtFrameTest("FrameTest3");

		//サイズを指定してメソッドを呼び出し
		f1.mySetSize(100, 100);
		f2.mySetSize(200, 200);
		f3.mySetSize(300, 300);

		//位置を指定
		f1.f.setLocation(0, 0);
		f2.f.setLocation(100, 100);
		f3.f.setLocation(200, 200);

		//フレームを表示
		f1.f.setVisible(true);
		f2.f.setVisible(true);
		f3.f.setVisible(true);
	}
}



まずインポート文で、「import java.awt.*;」としてawtの機能をすべて使えるようにしています。


mySetSizeメソッドでは、setSizeを呼び出してフレームのサイズを決めています。


[setSize]
java.awt クラスComponent

public void setSize(int width, int height)

幅がwidthで、高さがheightになるように、このコンポーネントのサイズを変更します。
このメソッドではレイアウトに関連する情報が変更されるため、コンポーネント階層が無効になります。

パラメータ:
width - このコンポーネントの新しい幅(ピクセル単位)
height - このコンポーネントの新しい高さ(ピクセル単位)


setLocationを呼び出し、コンポーネントの位置を指定しています。


[setLocation]
java.awt クラスComponent

public void setLocation(int x, int y)

このコンポーネントを新しい位置に移動します。
新しい位置の左上隅はこのコンポーネントの親の座標空間内のxおよびyパラメータによって指定されます。
このメソッドではレイアウトに関連する情報が変更されるため、コンポーネント階層が無効になります。

パラメータ:
x - 親の座標空間内の新しい位置の左上隅のx座標
y - 親の座標空間内の新しい位置の左上隅のy座標


setVisibleはフレームを表示するかどうかを指定します。


[setVisible]
java.awt クラスComponent

public void setVisible(boolean b)

パラメータbの値に応じて、このコンポーネントを表示または非表示にします。
このメソッドではレイアウトに関連する情報が変更されるため、コンポーネント階層が無効になります。

パラメータ:
b - trueの場合はこのコンポーネントを表示し、そうでない場合はこのコンポーネントを隠す


プログラムをコンパイルして実行結果を見てみましょう。
大きさと位置が異なるフレームが3つ表示されます。
フレーム上のクローズボタンは使用できません。
「Ctrlキー+Cキー」で強制終了してください。

~/Desktop/Programming/JP $ javac AwtFrameTest.java 
~/Desktop/Programming/JP $ java AwtFrameTest


大きさが違う3つのフレーム表示
大きさが違う3つのフレーム表示



25 | クラス分割の応用】 << 【ホーム】 >> 【27 | 図形描画




↓↓クリックして頂けると励みになります。