Návod: Vytvoření formuláře MDI se slučováním nabídek a s ovládacími prvky ToolStrip

Obor System.Windows.Forms názvů podporuje více aplikací rozhraní dokumentů (MDI) a MenuStrip ovládací prvek podporuje slučování nabídek. Formuláře MDI můžou také ToolStrip ovládat.

Tento návod ukazuje, jak používat ToolStripPanel ovládací prvky s formulářem MDI. Formulář také podporuje slučování nabídek s podřízenými nabídkami. Následující úlohy jsou znázorněny v tomto názorném postupu:

  • Vytvoření projektu model Windows Forms

  • Vytvoření hlavní nabídky formuláře Skutečný název nabídky se bude lišit.

  • ToolStripPanel Přidání ovládacího prvku do panelu nástrojů

  • Vytvoření podřízeného formuláře

  • ToolStripPanel Uspořádání ovládacích prvků podle pořadí vykreslování

Po dokončení budete mít formulář MDI, který podporuje slučování nabídek a pohyblivé ToolStrip ovládací prvky.

Pokud chcete zkopírovat kód v tomto tématu jako jeden výpis, přečtěte si článek Postupy: Vytvoření formuláře MDI s ovládacími prvky Menu Merging a ToolStrip.

Předpoklady

K dokončení tohoto návodu budete potřebovat Visual Studio.

Vytvoření projektu

  1. V sadě Visual Studio vytvořte projekt aplikace systému Windows s názvem MdiForm (File>New>Project>Visual C# nebo Visual Basic>Classic Desktop> model Windows Forms Application).

  2. V návrháři model Windows Forms vyberte formulář.

  3. V okno Vlastnosti nastavte hodnotu IsMdiContainer na truehodnotu .

Vytvoření hlavní nabídky

Nadřazený formulář MDI obsahuje hlavní nabídku. Hlavní nabídka obsahuje jednu položku nabídky s názvem Okno. Pomocí položky nabídky Okno můžete vytvářet podřízené formuláře. Položky nabídky z podřízených formulářů se sloučí do hlavní nabídky.

  1. Z panelu nástrojů přetáhněte MenuStrip ovládací prvek do formuláře.

  2. Přidejte do MenuStrip ovládacího prvku a ToolStripMenuItem pojmenujte ho Okno.

  3. MenuStrip Vyberte ovládací prvek.

  4. V okno Vlastnosti nastavte hodnotu MdiWindowListItem vlastnosti na ToolStripMenuItem1.

  5. Přidejte subitem do položky nabídky Okno a pojmenujte podtitul Nový.

  6. V okno Vlastnosti klikněte na Události.

  7. Poklikejte na Click událost.

    Návrhář model Windows Forms vygeneruje obslužnou rutinu Click události pro událost.

  8. Do obslužné rutiny události vložte následující kód.

    // This method creates a new ChildForm instance
    // and attaches it to the MDI parent form.
    private void newToolStripMenuItem_Click(object sender, EventArgs e)
    {
        ChildForm f = new ChildForm();
        f.MdiParent = this;
        f.Text = "Form - " + this.MdiChildren.Length.ToString();
        f.Show();
    }
    
    ' This method creates a new ChildForm instance 
    ' and attaches it to the MDI parent form.
     Private Sub newToolStripMenuItem_Click( _
     ByVal sender As Object, _
     ByVal e As EventArgs) _
     Handles newToolStripMenuItem.Click
    
         Dim f As New ChildForm()
         f.MdiParent = Me
         f.Text = "Form - " + Me.MdiChildren.Length.ToString()
         f.Show()
    
     End Sub
    

Přidání ovládacího prvku ToolStripPanel do panelu nástrojů

Pokud používáte MenuStrip ovládací prvky s formulářem MDI, musíte mít ToolStripPanel ovládací prvek. Chcete-li vytvořit formulář MDI v návrháři model Windows Forms, musíte ovládací prvek přidat ToolStripPanel do panelu nástrojů.

  1. Otevřete panel nástrojů a potom kliknutím na kartu Všechny model Windows Forms zobrazte dostupné ovládací prvky model Windows Forms.

  2. Kliknutím pravým tlačítkem otevřete místní nabídku a vyberte Vybrat položky.

  3. V dialogovém okně Zvolit položky panelu nástrojů se posuňte dolů do sloupce Název, dokud nenajdete ToolStripPanel.

  4. Zaškrtněte políčko toolStripPanel a klepněte na tlačítko OK.

    Ovládací ToolStripPanel prvek se zobrazí v sadě nástrojů.

Vytvoření podřízeného formuláře

V tomto postupu definujete samostatnou podřízenou třídu formuláře, která má vlastní MenuStrip ovládací prvek. Položky nabídky pro tento formulář jsou sloučeny s položkami nadřazeného formuláře.

  1. Přidejte do projektu nový formulář s názvem ChildForm .

    Další informace naleznete v tématu Postupy: Přidání model Windows Forms do projektu.

  2. Z panelu nástrojů přetáhněte MenuStrip ovládací prvek do podřízeného formuláře.

  3. MenuStrip Klikněte na glyf (Small black arrow) akcí návrháře ovládacího prvku a pak vyberte Upravit položky.

  4. V dialogovém okně Editor kolekcí položek přidejte do podřízené nabídky nový ToolStripMenuItem název ChildMenuItem .

    Další informace naleznete v tématu ToolStrip Items Collection Editor.

Vyzkoušení formuláře

  1. Stisknutím klávesy F5 zkompilujte a spusťte formulář.

  2. Kliknutím na položku nabídky Okno otevřete nabídku a potom klepněte na tlačítko Nový.

    V klientské oblasti MDI formuláře se vytvoří nový podřízený formulář. Nabídka podřízeného formuláře se sloučí s hlavní nabídkou.

  3. Zavřete podřízený formulář.

    Z hlavní nabídky se odebere nabídka podřízeného formuláře.

  4. Klikněte několikrát na Nový .

    Podřízené formuláře jsou automaticky uvedeny pod položkou nabídky Okno , protože MenuStrip je přiřazena MdiWindowListItem vlastnost ovládacího prvku.

Přidání podpory ToolStrip

V tomto postupu přidáte do nadřazeného formuláře MDI čtyři ToolStrip ovládací prvky. Každý ToolStrip ovládací prvek se přidá do ToolStripPanel ovládacího prvku, který je ukotvený na okraji formuláře.

  1. Z panelu nástrojů přetáhněte ToolStripPanel ovládací prvek do formuláře.

  2. Když je ToolStripPanel ovládací prvek vybraný, poklikejte na ToolStrip ovládací prvek v sadě nástrojů.

    V ToolStrip ovládacím ToolStripPanel prvku se vytvoří ovládací prvek.

  3. ToolStripPanel Vyberte ovládací prvek.

  4. V okno Vlastnosti změňte hodnotu vlastnosti ovládacího prvku Dock na Left.

    Ovládací ToolStripPanel prvek se ukotví na levé straně formuláře pod hlavní nabídkou. Klientská oblast MDI změní velikost tak, aby odpovídala ovládacímu ToolStripPanel prvku.

  5. Opakujte kroky 1 až 4.

    Ukotvit nový ToolStripPanel ovládací prvek na začátek formuláře

    Ovládací ToolStripPanel prvek je ukotvený pod hlavní nabídkou, ale vpravo od prvního ToolStripPanel ovládacího prvku. Tento krok znázorňuje důležitost pořadí vykreslování ve správném umístění ToolStripPanel ovládacích prvků.

  6. Opakujte kroky 1 až 4 pro další dva ToolStripPanel ovládací prvky.

    Ukotvit nové ToolStripPanel ovládací prvky vpravo a dole ve formuláři

Uspořádání ovládacích prvků ToolStripPanel podle pořadí Z

Pozice ukotveného ToolStripPanel ovládacího prvku ve formuláři MDI je určena pozicí ovládacího prvku v pořadí z. Pořadí vykreslování ovládacích prvků můžete snadno uspořádat v okně Osnova dokumentu.

  1. V nabídce Zobrazit klepněte na tlačítko Ostatní okna a potom klepněte na tlačítko Osnova dokumentu.

    Uspořádání ovládacích ToolStripPanel prvků z předchozího postupu je nestandardní. Důvodem je to, že pořadí vykreslování není správné. Pomocí okna Osnova dokumentu můžete změnit pořadí vykreslování ovládacích prvků.

  2. V okně Osnova dokumentu vyberte ToolStripPanel4.

  3. Opakovaně klikněte na tlačítko se šipkou dolů, dokud nebude toolStripPanel4 v dolní části seznamu.

    Ovládací prvek ToolStripPanel4 je ukotvený v dolní části formuláře pod ostatními ovládacími prvky.

  4. Vyberte ToolStripPanel2.

  5. Jedním kliknutím na tlačítko se šipkou dolů umístěte ovládací prvek do třetí části seznamu.

    Ovládací prvek ToolStripPanel2 je ukotvený v horní části formuláře pod hlavní nabídkou a nad ostatními ovládacími prvky.

  6. V okně Osnova dokumentu vyberte různé ovládací prvky a přesuňte je do různých pozic v pořadí vykreslování. Všimněte si efektu pořadí vykreslování na umístění ukotvených ovládacích prvků. K vrácení změn zpět použijte kombinaci kláves CTRL-Z nebo Zpět v nabídce Upravit .

Kontrolní bod – otestování formuláře

  1. Stisknutím klávesy F5 zkompilujte a spusťte formulář.

  2. Klikněte na úchyt ToolStrip ovládacího prvku a přetáhněte ovládací prvek do různých pozic ve formuláři.

    Ovládací prvek můžete přetáhnout ToolStrip z jednoho ToolStripPanel ovládacího prvku do druhého.

Další kroky

V tomto názorném postupu jste vytvořili nadřazený formulář MDI s ovládacími ToolStrip prvky a slučováním nabídek. Rodinu ovládacích prvků můžete použít ToolStrip pro mnoho dalších účelů:

Viz také