Visual – MenuStrip – ToolStripMenuItem – ToolStripSeparator – C#

Publicado: 25 de março de 2014 em C#

Em computação e telecomunicações, um menu é uma lista de opções ou comandos apresentados a um operador por um computador ou sistema de comunicações . Os menus são, por vezes, hierarquicamente organizado, permitindo uma navegação através de diferentes níveis da estrutura do menu.  A seleção de um item do menu com uma seta irá expandi-lo, mostrando um segundo menu (o sub-menu) com opções relacionadas com a entrada selecionada. É possível adicionar outros componentes ao menu como ícones de imagem, um componente de botões de radio e até mesmos botões de cheque.

MenuStrip

Fornece um sistema de menus para um formulário.

ToolStripMenuItem

Representa uma opção selecionável exibida em um MenuStrip . Embora ToolStripMenuItem substitui e adiciona funcionalidade para o controle MenuItem de versões anteriores, MenuItem é mantido para compatibilidade com versões anteriores e o uso futuro, se você escolher.

ToolStripSeparator

Representa uma linha usada para agrupar itens de um ToolStrip ou os itens drop-down de um MenuStrip ou ContextMenuStrip ou outro controle ToolStripDropDown.

Exemplo:

Neste exemplo criamos um menu, seus sub-menus e eventos.

C#

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace CriaMenu
{
    public partial class Form1 : Form
    {
        // Decllara componentes
        Label texto;

        // Declara variaveis
        string msg = "Você escolheu o item: ";
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Shown(object sender, EventArgs e)
        {
            // Adiciona valores as propriedades dos componentes
            texto = new Label();
            texto.Text = msg;
            texto.Size = new Size(300, 20);
            texto.Location = new Point(5,150);

            Form1.ActiveForm.Text = "Strip Menu";

            // Cria barra de Menu
            MenuStrip menu = new MenuStrip();

            // Cria menu
            ToolStripMenuItem itens1 = new ToolStripMenuItem("Menu 1");
            ToolStripMenuItem itens2 = new ToolStripMenuItem("Menu 2");

            // Cria sub-menu
            ToolStripMenuItem subitens1 = new ToolStripMenuItem("Item 3 - Sub-Menu 1");

            // Cria itens do menu
            ToolStripMenuItem m1item1 = new ToolStripMenuItem("Item 1", null, new EventHandler(clique1_m1));
            ToolStripMenuItem m1item2 = new ToolStripMenuItem("Item 2", null, new EventHandler(clique2_m1));
            ToolStripMenuItem m1item3 = new ToolStripMenuItem("Sub Item 3", null, new EventHandler(clique3_m1));
            ToolStripMenuItem m1item4 = new ToolStripMenuItem("Item 4", null, new EventHandler(clique4_m1));

            ToolStripMenuItem m2item1 = new ToolStripMenuItem("Item 1", null, new EventHandler(clique1_m2));

            // Adiciona itens ao menu
            itens1.DropDownItems.Add(m1item1);
            itens1.DropDownItems.Add(m1item2);
            itens1.DropDownItems.Add(subitens1);

            // Adiciona sub-menu
            subitens1.DropDownItems.Add(m1item3);

            // Adiciona separador
            itens1.DropDownItems.Add(new ToolStripSeparator());

            // Adiciona itens ao menu
            itens1.DropDownItems.Add(m1item4);
            itens2.DropDownItems.Add(m2item1);

            // Adiciona itens a barra de menu
            menu.Items.Add(itens1);
            menu.Items.Add(itens2);

            // Adiciona componentes ao formulario
            Form1.ActiveForm.Controls.Add(menu);
            Form1.ActiveForm.Controls.Add(texto);

        }

        // Cria eventos do menu
        private void clique1_m2(object sender, EventArgs e)
        {
            texto.Text = msg + "Menu 2, item 1";
        }

        private void clique1_m1(object sender, EventArgs e)
        {
            texto.Text = msg + "Menu 1, item 1";
        }

        private void clique2_m1(object sender, EventArgs e)
        {
            texto.Text = msg + "Menu 1, item 2";
        }

        private void clique3_m1(object sender, EventArgs e)
        {
            texto.Text = msg + "Menu 1, item3 - Sub-item 1";
        }

        private void clique4_m1(object sender, EventArgs e)
        {
            texto.Text = msg + "Menu 1, item 4";
        }

    }
}
Publicidade
comentários
  1. Bruno Figueiredo disse:

    Dúvida de uma semana solucionada! Muito obrigado pelo post!

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair /  Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair /  Alterar )

Conectando a %s