Club Builder - Foros de discusión Club Builder
Foro de C++Builder en español
 
 FAQFAQ   BuscarBuscar   MiembrosMiembros   Grupos de UsuariosGrupos de Usuarios   RegistrarseRegistrarse 
 PerfilPerfil   Entra para ver tus mensajes privadosEntra para ver tus mensajes privados   EntrarEntrar 

MDI y Panel de Fondo (Leo)

 
Publicar nuevo tema   Responder al tema    Foros de discusión -> Consultas
Ver tema anterior :: Ver tema siguiente  
Autor Mensaje
Mensaje    Asunto: MDI y Panel de Fondo (Leo) Responder citando

Hola

Cómo puedo lograr que un Panel quede como fondo de una aplicaión MDI, de modo que al abrir los MDIChild no queden ocultos detrás del mismo?

GRACIAS
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email
Mensaje    Asunto: Responder citando

No se si es esto exactamente lo que buscas..pero es lo mejor que se me ocurre...

Cuando crees la MDIchild ponle le parent sobre el Panel...
Código:


Mdi = new MdiChild;
Mdi->Parent = Panel;


Espero que te sirva.

Argone
Volver arriba
Ver perfil de usuario Enviar mensaje privado
Mensaje    Asunto: Es un Mapa de Navegacion Responder citando

Desafortunadamente esto no es lo que necesitaba, lo que quiero es tener un Panel con varias opciones en el MDI Form, de tal manera que me permita acceder a N MDIChild Forms según las necesidades del usuario.

Veo que es algo complejo. Podría existir otra manera de hacerlo... haber si me explico, lo que quiero es tener un Panel de Navegación, algo así como el Object Inspector pero integrado al Form principal...

Espero lograr hacerlo pronto.. necesito ayuda

GRACIAS
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email
Mensaje    Asunto: Responder citando

Hola, a mi me a funcionado de la siguiente forma, prueba con esto:

Este Evento corresponde a la llamada de un nuevo MDICHild en el MainForm

Código:

void __fastcall TMainForm::FileNew1Execute(TObject *Sender)
{
   CreateMDIChild("NONAME" + IntToStr(MDIChildCount + 1));
        Panel1->SendToBack();
}


Este corresponde al OnClose del formulario MDIChild

Código:
void __fastcall TMDIChild::FormClose(TObject *Sender, TCloseAction &Action)
{
   Action = caFree;
        if(MainForm->MDIChildCount==1)
           MainForm->Panel1->BringToFront();
}



Haber si te funciona, Saludos!
_________________
"Ser inteligente no es ser mas, solo equivocarse menos y no usar Visual Basic"
Atte.
Victor Yañez

Apoyen el Proyecto OpenSource del Club Builder. Ya tenemos componentes Listos!!!
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email Yahoo Messenger MSN Messenger
Mensaje    Asunto: Responder citando

Una aclaracion, se me olvido mencionar que como veras, en el codigo el Panel se muestra cuando se cierran todos los MDIChild, si quieres ver el Panel cuando las TODAS las ventanas hijas esten minimizadas tendrias que comprobar la propiedad WindowState de todas esas ventanas, si todas estuvieran Minimizadas (wsMinimized), podrias poner el codigo mencionado, especificamente en el Evento OnResize del formulario Hijo.

(Te lo digo asi al vuelo, si tienes problemas con eso hazlo saber, haber si puedo darte algun ejemplo en codigo)

Wink
_________________
"Ser inteligente no es ser mas, solo equivocarse menos y no usar Visual Basic"
Atte.
Victor Yañez

Apoyen el Proyecto OpenSource del Club Builder. Ya tenemos componentes Listos!!!
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email Yahoo Messenger MSN Messenger
Mensaje    Asunto: GRACIAS Responder citando

Muchas gracias, es justo lo que necesitaba. Cool

PERFECTO!
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email
Mostrar mensajes de anteriores:   
Cambiar a:  
No puedes publicar temas nuevos en este foro
No puedes responder a temas en este foro
No puedes editar tus mensajes en este foro
No puedes borrar tus mensajes en este foro
No puedes votar en las encuestas de este foro


Hosting WordPress Indedmedia desde 3,99 €
© 2002–2026 Club Builder · Funciona con phpBB.