PR

 Windowsアプリケーションのウインドウを作るには,Formクラスを使う。Visual Studioを使ってWindowsアプリケーションのプロジェクトを新規作成すると,自動的に1つのFormオブジェクトが追加される。この上に,ButtonコントロールやTextBoxコントロールなど,GUI部品となるコントロールを配置して,アプリケーションの外観を作る。

 標準でFormクラスは,大きさを変更できるウインドウになる。オプション・ダイアログ・ボックスやツール・ウインドウなど,大きさを変更できないウインドウを作成するには,ウインドウの境界線のスタイルを表すFormBorderStyleプロパティを変更する。

 マルチドキュメント・インターフェース(MDI: Multiple Document Interface)と呼ぶ,複数のドキュメントを1つのウインドウ内で操作するウインドウも作成できる。この場合,1つの親ウインドウに複数のMDI子ウインドウを個格納して作成する。親ウインドウと子ウインドウのどちらにも,Formクラスを使う。フォームを親ウインドウにするには,IsMdiContainerプロパティをTrueに設定する。子ウインドウにするには,MdiParentプロパティに親フォームを設定する。

 様々なプロパティによって,通常タイトル・バー右端に表示される最大化/最小化/閉じるボタンの表示/非表示,タイトル・バーに表示する文字列,ウインドウの大きさ,色などを変更できる。また,半透明ウインドウや,矩形以外のウインドウも作成できる。

 ForeColorプロパティを使用すると,フォーム上に配置されるすべてのコントロールの既定の前景色を変更できる。

 ほかのウインドウから呼び出されて表示され,そのウインドウが開いている間は,呼び出し元のウインドウを操作できないようにする「モーダル・ウインドウ」を作成するには,フォームを画面に表示する際に,ShowDialogメソッドを使用する。DesktopLocationプロパティに適当な値を指定することで,最初にウインドウを表示する位置を指定できる。SetDesktopLocationメソッドで指定することもできる。

 フォーム・クラスにMainメソッドを配置することで,フォームをアプリケーションの起動時のクラスとして使用できる。その場合は,Mainメソッド内に,フォームを作成して表示するコードを追加する。フォームを実行するには,MainメソッドにSTAThread属性も追加する必要がある。起動フォームが閉じられると,アプリケーションが終了する。

サンプルコードを見る


名前空間
System.Windows.Forms
対応バージョン
.NET Framework 1.0,1.1,2.0
.NET Compact Framework 1.0,2.0
主なプロパティ
AcceptButton
ユーザーがEnterキーを押したときにクリック・イベントを発生させるButtonコントロール。

ActiveControl
フォーム上の,現在アクティブになっているコントロール。

ActiveMdiChild
現在アクティブなマルチドキュメント・インターフェース(MDI)子ウインドウ。

AllowTransparency
フォームの不透明度を調節できるかどうかを示す。

AutoScroll
フォームで自動スクロールを有効にするかどうかを示す。

BackColor
コントロールの背景色。

BackgroundImage
コントロールの背景画像。

BackgroundImageLayout
コントロールの背景画像のレイアウト。

ControlBox
タイトル・バー右端にコントロール・ボックスを表示するかどうかを示す。

Controls
フォーム内に格納されているコントロールのコレクション。

DesktopLocation
デスクトップ上でのフォームの位置。

DialogResult
ダイアログ・ボックスとして表示されたときに,呼び出し元に返す結果。一般的なフォームでは,ウインドウが閉じるときDialogResultに値が代入される。また,このプロパティに値を設定すると,MDI子ウインドウやMDIコンテナ以外のフォームは自動的に閉じられる。

Enabled
フォームが利用可能かどうかを示す。

FormBorderStyle
フォームの境界線スタイル。

Height
フォームの高さ。

Icon
フォームのアイコン。

IsMdiChild
フォームがマルチドキュメント・インターフェイス(MDI)子ウインドウかどうかを示す。

IsMdiContainer
フォームがマルチドキュメント・インターフェイス(MDI)のコンテナ(親ウインドウ)かどうかを示す。

MaximizeBox
タイトル・バー右端に最大化ボタンを表示するかどうかを示す。

MdiChildren
対象となるフォームが含むマルチドキュメント・インターフェイス(MDI)子ウインドウの配列。

MdiParent
対象となるフォームのマルチドキュメント・インターフェイス(MDI)親ウインドウ。

MinimizeBox
タイトル・バー右端に最小化ボタンを表示するかどうかを示す。

Modal
フォームをモーダル・ダイアログとして表示するかどうかを示す。

Opacity
フォームの不透明度。MDIコンテナを半透明にした場合,MDI子ウインドウも半透明になる。逆にMDI子ウインドウだけを半透明にすることはできない。

ShowIcon
タイトル・バー左端にアイコンを表示するかどうかを示す。

ShowInTaskbar
フォームのアイコンをWindowsタスクバーに表示するかどうかを示す。

Size
フォームの高さと幅。

SizeGripStyle
フォームの右下隅に表示するサイズ変更グリップのスタイル。

Text
タイトル・バーに表示する文字列。

TransparencyKey
フォームの透明な領域を表す色。MDI親ウインドウおよびMDI子ウインドウでは透明色を指定しても無視される。

Width
フォームの幅。

WindowState
フォームのウインドウ状態。

主なメソッド
Activate
フォームをアクティブにし,そのフォームにフォーカスを移す。

Close
フォームを閉じる。

LayoutMdi
指定した方法でマルチドキュメント・インターフェイス(MDI)子ウインドウを配置する。

Refresh
コントロールとその子コントロールを再描画する。

Show
フォームを画面に表示する。

ShowDialog
フォームをモーダル・ダイアログ・ボックスとして表示する。

主なイベント
Activated
フォームがアクティブになると発生する。

Click
フォームがクリックされたときに発生する

Load
フォームが初めて表示される直前に発生する。

Paint
コントロールが再描画されると発生する

Resize
ウインドウの大きさが変更されると発生する。