PDA

Ver la Versión Completa : Centrado de pantallas MDI en el fondo de la aplicación


jjoliveras
15-10-2007, 13:42:55
Buenos días,

Tengo el siguiente problema y no doy con la tecla. En mi aplicación tengo en la parte superior un menu, inmediatamente debajo tengo un "coolbar" que contiene una "toolbar" y después todo el espacio libre a modo de escritorio y en la parte inferior una "statusbar".

Bien el problema es el siguiente. Cuando abro una ventana mdichild centrada al escritorio (poDesktopCenter) el top de la ventana es el equivalente de mostrar la ventana centrada mas el tamaño del "coolbar" con lo que la ventana sale muy descentrada.

De igual forma, coloqué un panel en el lateral derecho de la pantalla principal para mostrar una serie de cosas y las ventanas al abrirse se abren por detrás de él, no me lo coge como que forma parte de la ventana principal y que lo que ocupa ya forma parte del escritorio.

¿Alguien tiene una idea de como solucionar alguno de estos problemas?:confused:

Gracias de antemano.

Rockin
15-10-2007, 15:05:31
A mi me pasa lo mismo y estoy desesperado tengo un ExpressNavBar a la izquierda y por mas que cambio las propiedades del form MDI o me sale detras de la barra o me sale a la derecha de la pantalla pero con los scroll habilitados y no quiero eso. Solo que se muestre el form pegado justo a la barra de navegacin. a ver si nos puede ayudar alguien

Saludos

gluglu
15-10-2007, 15:37:13
No tiene solución. :o

Los Panel's siempre estarán delante de los MDIChild. Es un asunto interno que no se puede modificar.

Hay dos maneras de solucionarlo.

1. Mostrando y ocultando el Panel, cosa que creo que no es lo que pretendeis. :(

2. Crear otro MDIChild y situar el Panel dentro de dicho Form MDIChild. De esta manera lo podreis manejar a vuestro antojo.

Incluso, para que quedara más bonito, se podría crear un Form normal, que no sea MDI, sin borde (propiedad BorderStyle := bsNone) y colocar el Panel dentro de ese Form. De nuevo lo podreis manejar mucho mejor a vuestro antojo.

Espero haberos ayudado. ;)

jjoliveras
15-10-2007, 17:05:06
Ante todo gracias por las molestias de contestarme.

En cierto modo tendría su lógica, pero no entiendo porque cuando le dices a la ventana mdichild que maximice, respeta y se adapta perfectamente al escritorio que te deja con el panel incluido. Si la abres normal aparece por detrás, si maximizas se adapta es un poco ilógico.:confused:

Rockin
15-10-2007, 17:44:19
No se le puede indicar al form mdi en que lugar del principal debe a aparecer? ni en tiempo de ejecucion ni nada?

Saludos

Rockin
15-10-2007, 17:51:38
Yo lo he solucionado poniendole a la propiedad left, el valor que quiero antes del metodo show.

Saludos.

jjoliveras
15-10-2007, 19:02:43
Gracias Rockin,

eso es justo lo que he probado, lo meti dentro de una función que me abre los form y controla que no estén ya abiertos, poniendole que le reste la mitad del tamaño del panel y me funciona bien.

Gracias de todos modos y siento no haber contestado antes mostrando la solución que encontre. :D