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"; } } }
Dúvida de uma semana solucionada! Muito obrigado pelo post!