方法: MDI 子フォームを配置する
多くの場合、アプリケーションには、並べて表示、重ねて表示、整列など、開いている MDI 子フォームのレイアウトを制御するメニュー コマンドがあります。 LayoutMdi メソッドと MdiLayout 列挙値のいずれかを使用して、MDI 親フォーム内の子フォームを再配置することができます。
MdiLayout 列挙値は、子フォームを重ねて表示したり、水平方向または垂直方向に並べて表示したり、または MDI フォームの下部に沿って整列された子フォーム アイコンとして表示します。 これらの値にはそれぞれ、Windows コマンドの [重ねて表示] 、 [ウィンドウを左右に並べて表示] 、 [ウィンドウを上下に並べて表示] 、 [デスクトップを表示] と同じ効果があります。
多くの場合、これらのメソッドは、メニュー項目の Click イベントで呼び出されるイベント ハンドラーとして使用されます。 このようにして、テキスト "重ねて表示" を指定したメニュー項目に、MDI 子ウィンドウに対する目的の効果を持たせることができます。
子フォームを整列させるには
メソッドで、LayoutMdi メソッドを使用して MDI 親フォームの MdiLayout 列挙体を設定します。 次に、MDI 親フォーム (MdiLayout.Cascade) の子ウィンドウに
Form1
列挙値を使用する例を示します。 この列挙型は、 [重ねて表示] メニュー項目の Click イベントに対するイベント ハンドラー中のコードで使用されます。Protected Sub CascadeWindows_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Me.LayoutMdi(System.Windows.Forms.MdiLayout.Cascade) End Sub
protected void CascadeWindows_Click(object sender, System.EventArgs e){ this.LayoutMdi(System.Windows.Forms.MdiLayout.Cascade); }
注意
使用する MdiLayout 列挙値を変更することで、ウィンドウを並べて表示したり、ウィンドウをアイコンとして並べたりすることもできます。
Visual C# を使用している場合は、フォームのコンストラクターに次のコードを追加して、イベント ハンドラーを登録します。
this.button1.Click += new System.EventHandler(this.button1_Click);
関連項目
.NET Desktop feedback