Duda en menu

Buenas, soy yo otra vez molestando...
A ver si me pudieras ayudar con unas dudas que tengo, gracias de antemano:
a)Como hago para definir que un menu va ha ser llamado desde un formulario sdi, y como lo llamo desde ese formulario, ya se definir al formulario como sdi, pero al menu no se como hacerlo, ya que al llamarlo se ejecuta en el formulario de foxpro.
Gracias...

3 respuestas

Respuesta
1
Los menús se llaman como tradicionalmente lo has hecho, solo que debes cumplir algunos requisitos.
1.- El formulario que tendrá al menú debe ser de nivel superior Showwindow=2
2.- No debe pertenecer a la ventana fox Descktop=.F.
3. Establecer a MDI el formulario MDIForm=.T.
4.- En el diseñador de menús llama activa la casilla que dice "formulario de nivel superior"
5. Finalmente sigue los siguientes pasos para agregar el menú.
Agregar un menú a un formulario de nivel superior
Para agregar un menú a un formulario de nivel principal
Cree un menú de formulario de nivel superior. Para obtener más información acerca de la creación de menús para formularios de nivel superior, consulte el capítulo 11, Diseñar menús y barras de herramientas.
Establezca la propiedad ShowWindow del formulario a 2 - Como formulario de nivel superior.
En el evento Init del formulario, ejecute el programa de menú y pásele dos parámetros:
DO menuname.mpr WITH oForm, lAutoRename
OForm es una referencia de objeto al formulario. En el evento Init del formulario, pásele THIS como primer parámetro.
LAutoRename especifica si se genera o no un nombre único para el menú. Si pretende ejecutar varias instancias del formulario, pase .T. como lAutoRename.
Por ejemplo, puede llamar a un menú llamado mySDImenu con este código:
DO mySDImenu.mpr WITH THIS, .T.
Esto ultimo te lo remito tal y como viene en la ayuda.
Respuesta
1
Si entendí bien, creo que porque el formulario debe tener la propiedad desktop = .t.
En caso contrario, dime como poner el famoso SDI (que la verdad no recuerdo muy bien que es) para poder ampliar más.
Respuesta
1
1. Desde el Diseñador de Menú haces clic en el menú Ver, luego en "Opciones Generales" y te sale la ventana "Opciones Generales". En esta ventana busca un cuadro de chequeo que dice "Formulario de nivel superior" y coloca sobre él una marca. Guarda y genera el menú.
Ahora en el INIT del formulario principal (SDI) debes colocar el siguiente código:
DO NombreMenu.Mpr With Thisform, .T.
Recuerda que la propiedad "ShowWindow" debe estar establecida en (2) Como formulario de nivel superior.
Espero que te sirva.
Eddie Yanes
Barranquilla - Colombia

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas