方法 : MenuStrip を使用して MDI ウィンドウの一覧を作成する (Windows フォーム)

マルチドキュメント インターフェイス (MDI) を使用して、複数のドキュメントを同時に開き、ドキュメント間でコンテンツをコピーして貼り付けることができるアプリケーションを作成します。

この手順では、親の [ウィンドウ] メニューに、すべてのアクティブな子フォームの一覧を作成する方法を示します。

MenuStrip 上に MDI ウィンドウの一覧を作成するには

  1. フォームを作成し、その IsMdiContainer プロパティを true に設定します。

  2. フォームに MenuStrip を追加します。

  3. 2 つのトップレベル メニュー項目を MenuStrip に追加し、それらの Text プロパティを &File&Window に設定します。

  4. 2 つのサブメニュー項目を &File メニュー項目に追加し、それらの Text プロパティを &Open&New に設定してください。

  5. MenuStripMdiWindowListItem プロパティを、&WindowToolStripMenuItem に設定します。

  6. プロジェクトにフォームを追加し、必要なコントロールを追加します (別の MenuStrip など)。

  7. ToolStripMenuItem&NewClick イベントにイベント ハンドラーを作成します。

  8. イベント ハンドラー内に次のようなコードを挿入し、Form2 の新規インスタンスを Form1 の MDI 子フォームとして作成して表示します。

    Private Sub openToolStripMenuItem_Click(ByVal sender As _  
    System.Object, ByVal e As System.EventArgs) Handles _  
    openToolStripMenuItem.Click  
        Dim NewMDIChild As New Form2()  
        'Set the parent form of the child window.  
            NewMDIChild.MdiParent = Me  
        'Display the new form.  
            NewMDIChild.Show()  
    End Sub  
    
    private void newToolStripMenuItem_Click(object sender, EventArgs e)  
    {  
        Form2 newMDIChild = new Form2();  
        // Set the parent form of the child window.  
            newMDIChild.MdiParent = this;  
        // Display the new form.  
            newMDIChild.Show();  
    }  
    

コードのコンパイル

この例で必要な要素は次のとおりです。

  • Form1Form2 という名前の 2 つの Form コントロール。

  • Form1 上の menuStrip1 という名前の MenuStrip コントロールと、Form2 上の menuStrip2 という名前の MenuStrip コントロール。

  • System アセンブリおよび System.Windows.Forms アセンブリへの参照。

関連項目