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.

Duda sobre MDI

Foro público de Xailer en español
Responder
Bingen Ugaldebere
Mensajes: 1310
Registrado: Mié Sep 26, 2007 7:12 pm

Duda sobre MDI

Mensaje por Bingen Ugaldebere »

Si en un Form MDI donde pongo una Toolbar y una Statusbar POR CODIGO
estas a quien deben de pertenecer al form o al área cliente ??
Si hago que pertenezcan al form no aparecen y si hago que pertenezcan al
área cliente si que aparecen pero al cambiar de tamaño la ventana el
área cliente no se ajusta y aparecen unas barras de scroll de forma que
abajo del todo sigue estando la Statusbar.
Todo esto si no es MDI funciona perfectamente.
Quizás deberí­a de hacer algo para que Application:oMainForm:oMdiClient
se ajuste al Form en el evento Resize??
Gracias y salu2.
Avatar de Usuario
ignacio
Site Admin
Mensajes: 9463
Registrado: Lun Abr 06, 2015 8:00 pm
Ubicación: Madrid, Spain
Contactar:

Duda sobre MDI

Mensaje por ignacio »

Bingen,
Cualquier control que tu pongas en la MDIFrame HA DE SER con algún tipo de
alineación, y entonces el área que queda es donde las MDIClient se van a
visualizar. Si intentas mover la MDIClient fuera de ese área te saldrán las
barras de scroll en la MDIFrame, pero esto ocurrre incluso aunque no hayas
puesto ningún control en la MDIFrame.
Te resultará extraño porque FW nunca mostró dichas barras de scroll, pero lo
correcto es hacerlo.
Un saludo,
--
Ignacio Ortiz de Zúñiga
http://www.xailer.com
"Bingen Ugaldebere" <bingen@muninser.com> escribió en el mensaje
news:[email=44ffd517@news.xailer.com...]44ffd517@news.xailer.com...[/email]
> Si en un Form MDI donde pongo una Toolbar y una Statusbar POR CODIGO estas
> a quien deben de pertenecer al form o al área cliente ??
>
> Si hago que pertenezcan al form no aparecen y si hago que pertenezcan al
> área cliente si que aparecen pero al cambiar de tamaño la ventana el área
> cliente no se ajusta y aparecen unas barras de scroll de forma que abajo
> del todo sigue estando la Statusbar.
>
> Todo esto si no es MDI funciona perfectamente.
>
> Quizás debería de hacer algo para que Application:oMainForm:oMdiClient se
> ajuste al Form en el evento Resize??
>
> Gracias y salu2.
>
Ignacio Ortiz de Zúñiga
[OZ Software]
https://www.ozs.es
--
[Equipo de Xailer / Xailer team]
https://www.xailer.com
Avatar de Usuario
jfgimenez
Site Admin
Mensajes: 5718
Registrado: Lun Abr 06, 2015 8:48 pm
Contactar:

Duda sobre MDI

Mensaje por jfgimenez »

Bingen,
> Si en un Form MDI donde pongo una Toolbar y una Statusbar POR CODIGO estas
> a quien deben de pertenecer al form o al área cliente ??
>
> Si hago que pertenezcan al form no aparecen y si hago que pertenezcan al
> área cliente si que aparecen pero al cambiar de tamaño la ventana el área
> cliente no se ajusta y aparecen unas barras de scroll de forma que abajo
> del todo sigue estando la Statusbar.
>
> Todo esto si no es MDI funciona perfectamente.
>
> Quizás debería de hacer algo para que Application:oMainForm:oMdiClient se
> ajuste al Form en el evento Resize??
Aparte de lo que te ha dicho Ignacio, ¿cuando estás creando los controles?
Te lo digo porque si los creas después de que oMdiClient haya sido creado,
entonces es normal lo que te ocurre. Siempre tienes que crear los controles
antes de que se cree la oMdiClient, que se crea justo después de dispararse
el evento OnInitialize. Vamos, que el evento OnInitialize es perfecto para
crearlos.
--
Un saludo,
José F. Giménez
http://www.xailer.com
José F. Giménez
[Equipo de Xailer / Xailer team]
http://www.xailer.com
http://www.xailer.info
Bingen Ugaldebere
Mensajes: 1310
Registrado: Mié Sep 26, 2007 7:12 pm

Duda sobre MDI

Mensaje por Bingen Ugaldebere »

Pero si armo la Statusbar en el evento OnInitialize del Form
With Object oStatusBar:= TstatusBar():New( If(AppData:lMDIWnd,
Application:oMainForm:oMdiClient, Application:oMainForm) )
dice que no existe oMdiClient lógicamente o eso creo entender en el
siguiente error.
------ Información detallada del error
Subsistema: BASE
Código de error: 1004
Estado: .F.
Descripción: Class: 'NIL' has no exported method
Operación: OMDICLIENT
Argumentos:
Fichero:
Código error SO: 0
Pila de llamadas:
OWND:ONINITIALIZE (1447)
OWND:NEW (187)
TAPPLICATION:SHOW (73)
MAIN (16)
Avatar de Usuario
jfgimenez
Site Admin
Mensajes: 5718
Registrado: Lun Abr 06, 2015 8:48 pm
Contactar:

Duda sobre MDI

Mensaje por jfgimenez »

Bingen,
> Pero si armo la Statusbar en el evento OnInitialize del Form
>
>
> With Object oStatusBar:= TstatusBar():New( If(AppData:lMDIWnd,
> Application:oMainForm:oMdiClient, Application:oMainForm) )
>
>
> dice que no existe oMdiClient lógicamente o eso creo entender en el
> siguiente error.
Exactamente, oMdiClient no existe en ese momento. Pero el padre de la
statusbar tiene que ser el formulario, es decir, Self, y no oMdiClient.
--
Un saludo,
José F. Giménez
http://www.xailer.com
José F. Giménez
[Equipo de Xailer / Xailer team]
http://www.xailer.com
http://www.xailer.info
Responder