In order for this site to work correctly we need to store a small file (called a cookie) on your computer. Most every site in the world does this, however since the 25th of May 2011, by law we have to get your permission first. Please abandon the forum if you disagree.

Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.

Destruir Menu

Foro de Xailer profesional en español
Responder
carlos
Mensajes: 126
Registrado: Mié Feb 02, 2005 7:31 pm

Destruir Menu

Mensaje por carlos »

Feliz Año nuevo a todos, que tengamos un año muy prospero con Xailer y
nuestra vidas en General.
Problema
Tengo un Menu en un Formulario Principal, al abril un MDIChild, agrego al
Menu del Formulario Principal el Menu del Formulario MDIChild llamante,
ahora bien, como le hago para eliminar el menu agregado al formulario
principal cuando cierro el formulario llamante?.
Lo que tengo en el formulario llamante es esto a ver si me dicen que hay
mal, a mi me trabaja, pero no creo que sea la mejor solucion, estoy seguro
que alguna mejor solucion ustedes tendran.
MENU oMenu
MENUITEM "&Menu Hijo" //ACTION TMdiChild():New( Self ):Show()
MENU ::oSub
MENUITEM oSub2 TEXT "&Carlos" // ACTION ::oMdiClient:Tile()
MENUITEM oSub2 TEXT "&Latty" // ACTION ::oMdiClient:Cascade()
MENUITEM oSub2 TEXT "&Roberto" + TAB + "Ctrl+F6" //ACTION
::oMdiClient:Next()
SEPARATOR
MENUITEM oSub2 TEXT "La Guera" //ACTION //::oMdiClient:CloseAll()
ENDMENU
ENDMENU
WITH OBJECT ::oSub1 := TMenuItem():New(::oParent:oMenu )
:cText := oMenu:aItems[1]:cText
:Create()
END
::oSub1:AddMenu( ::oSub )
Application:oMainForm:oMdiClient:aForms[ 1 ]:SetFocus()
RETURN Nil
Aqui lo que hago
oSub1:Destroy() y no me lo destruye
Gracias
Avatar de Usuario
ignacio
Site Admin
Mensajes: 9447
Registrado: Lun Abr 06, 2015 8:00 pm
Ubicación: Madrid, Spain
Contactar:

Destruir Menu

Mensaje por ignacio »

Carlos,
Toda la gestión de menú para las distintas Child abiertas lo hace
automáticamente Xailer. Compruebe el siquiente código del ejemplo MdiSample
que incluye Xailer:
MENU oMenu
MENUITEM "&New child window" ACTION TMdiChild():New( Self ):Show()
MENUITEM oSub CAPTION "Windows"
MENU
MENUITEM "&Mosaic" ACTION ::oMdiClient:Tile()
MENUITEM "&Cascade" ACTION ::oMdiClient:Cascade()
MENUITEM "&Next Window" + TAB + "Ctrl+F6" ACTION
::oMdiClient:Next()
MENUITEM "&Previous Window" + TAB + "Shift+Ctrl+F6" ACTION
::oMdiClient:Previous()
SEPARATOR
MENUITEM "Close All" ACTION ::oMdiClient:CloseAll()
ENDMENU
ENDMENU
::oMenu := oMenu
::oMdiMenu := oSub:oSubMenu
Saludos,
"Carlos Cedeño Vera" <carlos@labodegadeclimas.com> escribió en el mensaje
news:43c5a631$[email=1@ozsrvnegro.ozlan.local...]1@ozsrvnegro.ozlan.local...[/email]
> Feliz Año nuevo a todos, que tengamos un año muy prospero con Xailer y
> nuestra vidas en General.
>
> Problema
>
> Tengo un Menu en un Formulario Principal, al abril un MDIChild, agrego al
> Menu del Formulario Principal el Menu del Formulario MDIChild llamante,
> ahora bien, como le hago para eliminar el menu agregado al formulario
> principal cuando cierro el formulario llamante?.
>
> Lo que tengo en el formulario llamante es esto a ver si me dicen que hay
> mal, a mi me trabaja, pero no creo que sea la mejor solucion, estoy seguro
> que alguna mejor solucion ustedes tendran.
>
> MENU oMenu
> MENUITEM "&Menu Hijo" //ACTION TMdiChild():New( Self ):Show()
> MENU ::oSub
> MENUITEM oSub2 TEXT "&Carlos" // ACTION ::oMdiClient:Tile()
> MENUITEM oSub2 TEXT "&Latty" // ACTION ::oMdiClient:Cascade()
> MENUITEM oSub2 TEXT "&Roberto" + TAB + "Ctrl+F6" //ACTION
> ::oMdiClient:Next()
> SEPARATOR
> MENUITEM oSub2 TEXT "La Guera" //ACTION //::oMdiClient:CloseAll()
> ENDMENU
> ENDMENU
>
> WITH OBJECT ::oSub1 := TMenuItem():New(::oParent:oMenu )
> :cText := oMenu:aItems[1]:cText
> :Create()
> END
> ::oSub1:AddMenu( ::oSub )
> Application:oMainForm:oMdiClient:aForms[ 1 ]:SetFocus()
> RETURN Nil
>
> Aqui lo que hago
>
> oSub1:Destroy() y no me lo destruye
> Gracias
>
Ignacio Ortiz de Zúñiga
[OZ Software]
https://www.ozs.es
--
[Equipo de Xailer / Xailer team]
https://www.xailer.com
Responder