El siguiente código fue modificado por razones de simplicidad y por ende no está compilado. La idea es usar un contextmenustrip (menú) con ToolStripDropDownButtons (listas desplegables con varias opciones de las que solo se puede elegir una).
-- Declaraciones (Un menú y dos listas)--
Private Menu_Estandar As ContextMenuStrip
Private T_Formas As ToolStripDropDownButton
Private T_Colores As ToolStripDropDownButton
--Método que llena las listas y las asigna al menú--
Private Sub Cargar_Items_Menu()
'
Menu_Estandar = New ContextMenuStrip()
T_Formas = New ToolStripDropDownButton("Formas", Icono_Formas)
T_Colores = New ToolStripDropDownButton("Colores", Icono_Colores)
'
T_Formas.DropDownItems.Add("Cuadrado", Icono_Cuadrado, AddressOf Seleccionada_Forma)
T_Formas.DropDownItems.Add("Círculo", Icono_Círculo, AddressOf Seleccionada_Forma)
T_Formas.DropDownItems.Add("Triángulo", Icono_Triángulo, AddressOf Seleccionada_Forma)
'
T_Colores.DropDownItems.Add("Azul", Icono_Azul, AddressOf Seleccionado_Color)
T_Colores.DropDownItems.Add("Rojo", Icono_Rojo, AddressOf Seleccionado_Color)
T_Colores.DropDownItems.Add("Amarillo", Icono_Amarillo, AddressOf Seleccionado_Color)
'
Menu_Estandar.Items.Add(T_Objetos)
Menu_Estandar.Items.Add(T_Terrenos)
'
End Sub
-- Método que muestra el menú (hay que asignarlo como manejador de evento en los controles en que queramos que aparezca al hacer click derecho) --
Private Sub Cosa_Clicada(ByVal sender As System.Object, ByVal e As System.EventArgs)
'
Menu_Estandar.Show(TryCast(sender, Control), TryCast(sender, Control).DisplayRectangle.X, TryCast(sender, Control).DisplayRectangle.Y)
'
End Sub
--Métodos que contendrán el código correspondiente a cada elemento que se pueda clicar de las listas desplegables (los asignamos como manejadores en Cargar_Items_Menu() --
'
Private Sub Seleccionada_Forma(ByVal sender As System.Object, ByVal e As System.EventArgs)
'
'Código para selección de una forma
'
End Sub
'
Private Sub Seleccionado_Color(ByVal sender As System.Object, ByVal e As System.EventArgs)
'
'Código para selección de un color
'
End Sub
--