Menu

Jos?
23 de Febrero del 2004
como hago para q cuando apriete el boton derecho del mouse en cualquiera parte de mi programa aparesca uun menu?. Gracias.

^Neo^
23 de Febrero del 2004
Hay dos fases. Primera de ellas es crear el menú. Creo (aunque no estoy seguro) que se crea como un menú normal pero poniendo las propiedades visible=False. La segunda es mostrar el menú. Esto se hace con el método PopupMenu, cuya sintaxis es:

formulario.PopupMenu NombreMenu[, indicadores[,x[,y]]]
Menú es el nombre (Name) del menú, indicadores define la ubicación y comportamiento del menú, y x e y definen las coordenas referidas a la esquina superior izquierda, y relativas al formulario, dónde aparecerá el menú. Por defecto el menú aparece en la posición en que se encuentra el ratón.

Para visualizar el menú tenemos que escribir la siguiente sentencia en el lugar en el cual al clicar aparecerá el menú, por ejemplo si nos referimos a una caja de texto sería:

Private Sub text1_Click()
PopupMenu NombreMenu
end sub



Bueno, es algo así, investiga, y los demás que leáis este mensaje aclarad esto más, porque creo que por defecto sólo funciona el botón izquierdo. Experimenta. Suerte.

sdemingo
23 de Febrero del 2004
Hola,

tan solo añadir, que la propiedad false debe ir en el elemento de menú de primer nivel solamente para que no aparezca en el formulario, pero los campos de segundo nivel y el resto deben ser visible = true.

Para mostrar el menú al pinchar con el botón derecho del ratón, deberás controlar el evento mouseDown

Private Sub mfGrid_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
If Button = 2 Then ' Es el boton derecho
PopupMenu Menu
End If
End Sub


salu2
sdemingo