Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   OOP (https://www.clubdelphi.com/foros/forumdisplay.php?f=5)
-   -   Mdiforms y Paneles (https://www.clubdelphi.com/foros/showthread.php?t=42930)

jsanchez 26-04-2007 05:10:11

Mdiforms y Paneles
 
Hola Foro,

Tengo una aplicación con un form principal (mdiForm) que llama a distintos forms (mdichild y normales). Ahora tengo la idea de hacer el menú principal un poco más visual, para ello tengo un panel superior, con las categorias en distintos botones, al darle a cada botón, me debe aparecer otro panel abajo con las distintas opciones de esa categoría. La idea es hacer como un tabsheet, pero con paneles y botones para poder hacerlo con iconos.
El problema que tengo es que al ser mdiform el principal y los otros mdichild, cuando se cargan aparecen "detras" de los paneles, con la consiguiente inutilidad de la idea.

a alguien se le ocurre como solucionar esto?


Muchas Gracias

roman 26-04-2007 08:15:20

Pon el panel con alineación (Alignment = alTop, p. ejemplo) Esto hará que el formulario MDI padre restrinja el área de los hijos fuera del panel, o de cualesquiera paneles alineados a una orilla del formulario.

// Saludos

jsanchez 26-04-2007 09:01:32

Gracias por la respuesta.

El problema es que hay un panel con alligment 'alTop' con varios botones, y varios paneles que aparece según el botón que se pulse, y con alligment 'alClient', para que ocupen el resto de la pantalla, cuando se le da a uno de los botones que hay en estos ultimos paneles, es cuando deben mostrarse los forms 'mdichild', pero no aparece, se siguen quedando detrás.

Gracias

roman 26-04-2007 09:07:22

Los formularios hijos sólo pueden abarcar el área cliente, esto es, el area del formulario padre no ocupada por controles alineados a las orillas. Entonces, si los últimos paneles los alíneas al cliente, pues no dejas ningún espacio para los hijos. Lo que no me queda claro es por qué quieres alinear al cliente los segundos paneles en lugar de también a la parte superior (quedarían por debajo del panel 'principal')

// Saludos

Lepe 26-04-2007 12:29:21

Quizás usando un panel tipo OutlookBar se simplifique el tema.

http://www.codeproject.com/miscctrl/outbar2.asp

Ese enlace es una simple imagen para que te hagas una idea de lo que digo, no he mirado esa web a fondo. La JVCL tiene un control que funciona bien.

Saludos

jsanchez 26-04-2007 18:01:42

1 Archivos Adjunto(s)
Gracias por ambos comentarios, adjunto encontrareis un proyecto de ejemplo, uno hecho a la carrera, pero esa es la idea.

Muchas Gracias

roman 26-04-2007 18:52:20

1 Archivos Adjunto(s)
Pues es lo que te digo, no hay espacio para los formularios hijo. Te mando una revisión que me parece es lo que buscas. Sólo eliminé un panel y ajusté el de los botones verticales a alLeft.

// Saludos

jsanchez 26-04-2007 19:09:36

Muchas gracias por la idea, la verdad es que por el numero de opciones, yo creo que no me cabría, pero voy a probar a ver como lo hago, de nuevo gracias

roman 26-04-2007 19:18:13

Pero entonces es que no he entendido lo que buscas. Por que si quieres abarcar toda el área cliente para las subopciones, ¿dónde pensabas poner los formularis hijos? ¿Arriba de los botones? ¿No se vería eso un poco raro? ¿Quizá permitiendo que la barra lateral tenga barras de desplazamiento para ver más botones?

// Saludos

jsanchez 26-04-2007 19:22:29

Si, la idea es que los formularios nuevos se vieran superpuestos a todo el principal, pues esos formularios hacen tareas especificas, por ejemplo entradas y salidas de un inventario, y otro montón de procesos. estoy viendo esta opción que me has sugerido, distribuyendo las opciones de otra manera.

roman 26-04-2007 19:32:46

1 Archivos Adjunto(s)
A ver que te parece la revisión 2 con barra de scroll :)

// Saludos

jsanchez 26-04-2007 19:44:04

Si, voy a adaptar los menús, para hacer algo así, muchas gracias


La franja horaria es GMT +2. Ahora son las 21:33:36.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi