Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   OOP (https://www.clubdelphi.com/foros/forumdisplay.php?f=5)
-   -   Mostrar un formulario existente (https://www.clubdelphi.com/foros/showthread.php?t=82309)

jafera 21-02-2013 18:10:23

Mostrar un formulario existente
 
Hola a todos.

Tengo una pequeña duda acerca de como hacer una presentación de un formulario que a la vez llama a otro, explico:

Formulario Principal MDI llamo a formulario secundario MDI Child con el siguiente código:

Código Delphi [-]
 
procedure TF_Inici.ToolButton5Click(Sender: TObject);
begin
        if not Assigned(F_Girona) then
        begin
                F_Girona := TF_Girona.Create(self);
        end
        else
        begin
                F_Girona.BringToFront;
        end;
end;

Enseña el form correctamente y si existe y está detrás lo tre al frente, hasta aquí sin problema.

Desde este form llamo a otro:

Código Delphi [-]
 
procedure TF_Girona.CrearRebut1Click(Sender: TObject);
begin
        if not Assigned(F_Rebut) then
        begin
                F_Rebut := TF_Rebut.Create(Self);
        end
        else
        begin
                F_Rebut.BringToFront;
        end;
end;

Esto también funciona correcto, pero si llamo otra vez al primer formulario, este viene al frente y como tiene el segundo que cuelga de el pues lo deja atrás.

He probado con poner el formulario contenedor como Normal y tampoco me hace lo que me gustaría que hiciera. Me gustaria que el formulario F_Girona quedara fijo por más que lo llamara dos veces y siempre quedara atrás, como un modal o algo así.

Alguien tiene una sugerencia?

Gracias a todos por adelantado

Josep

newtron 21-02-2013 20:34:00

Hola.

¿No te vale hacer un SendToBack al formulario que quieres mantener detrás?

Saludos

jafera 21-02-2013 21:43:38

Gracias newtron.

Si podria haer el SendToBack pero me gustaria que al crear el form F_Girona, este se quedara fijo hasta que yo lo cerrase.

Saludos

Josep

newtron 22-02-2013 10:07:16

Hola de nuevo.

Yo uso formularios normales y tuve esa problemática en su día, no sé si la solución que al final me ayudaron a darle servirá para formularios MDIChild pero igual te orienta. Aquí tienes el hilo por si le quieres echar un vistazo, al final usé una solución sugerida por el compañero Escafandra, un maestro de la api.

Saludos


La franja horaria es GMT +2. Ahora son las 17:51:33.

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