PDA

Ver la Versión Completa : Ventanas Nietas MDI


apicito
15-05-2003, 08:42:35
Tengo un form MDI principal desde el que abro varios form hijos y desde alguno de estos abro otros form "Nietos". Con los hijos no tengo problema, ya que se abren dentro de la ventana del padre, si embargo, no consigo que los form nietos se abran dentro de los hijos. Puede hacerse esto de alguna manera?

FRANKER
15-05-2003, 09:02:32
Me parece que no se puede hacer ya que una ventana no puede ser "padre" (fsMDIform) e "hija"(fsMDIchild) a la vez...

Si encuentro alguna manera de hacerlo... ya te aviso.

Saludos!!!!

delphi.com.ar
15-05-2003, 16:43:03
Podrías hacer algo similar a un ejemplo que puse en mi página. Es el archivo relforms.zip, este sería el código de las ventanas hijas y "nietas", los MDI los trabajarías normalmente.

http://www.delphi.com.ar/source/samples/index.htm

Espero que te sea útil,
Saludos!

apicito
15-05-2003, 17:41:55
delphi.com.ar:
Creo que no entiendo el ejemplo de tu página, ya que hasta donde soy capaz de ver son un formulario padre y sus hijos correspondientes; pero, ¿donde se crean lo formularios nietos dentro de cada uno de los hijos?:(

delphi.com.ar
15-05-2003, 17:51:45
Yo te diría que este "Padre" sean tus MDIChilds, por lo tanto los hijos de estos forms, son lo nietos... ¿me explico?

delphi.com.ar
15-05-2003, 18:37:32
Volví a subir el ejemplo a mi página, con el agregado del código para los "Formularios Nietos"

Contame que tal te fue,
Saludos!

apicito
16-05-2003, 07:57:12
No veo en la nueva version ningun formulario nieto. De todas formas, he reproducido la tecnica que utilizas para crear el hijo inscribiéndolo en un panel pero me da un error de "access violation" en
with Neto.Create( Self ) do
begin
Parent := Panel1;
Visible := True;
end;

apicito
16-05-2003, 09:41:33
Funciona correctamente. Gracias. El anterior mensaje lo envié sin haber visto tu primera contestación, donde explicabas el funcionamiento. Ahora Cree un nuevo Padre(MDIForm) al que conecte como hijo tu formulario padre(MDIChild) y a este tu formulario hijo (FsNormal). Era lo que necesitaba.