Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Formularios modales (https://www.clubdelphi.com/foros/showthread.php?t=26831)

pyanqn 04-11-2005 17:39:58

Formularios modales
 
Hola tengo un problema con un formulario.

Quiero que sea modal, pero me surge un error en tiempo de ejecución, sin embargo tengo otro formulario tambien modal que funciona correctamente.
Qué puede estar ocurriendo?

Lo llamo así:

procedure TFrmVisitaNueva.Button1Click(Sender: TObject);
begin
FrmSeleccion:=TFrmSeleccion.Create(Application);
try
if FrmSeleccion.Showmodal=mrok then
Begin
//Aqui quiero hacer algo
end;
finally
FrmSeleccion.Free;
end;
end;

vtdeleon 04-11-2005 17:54:11

Saludos

Que error te da??


Nt:Usa las etiquetas, asi seria mas legible tu codigo, Lee mi firma!

Neftali [Germán.Estévez] 04-11-2005 17:55:16

Por favor utiliza los tag's de [ Delphi ]...[ /Delphi ] (sin los espacios interiores) cuando coloques código en los mensajes.

Cita:

Empezado por pyanqn
...pero me surge un error en tiempo de ejecución,

Estaría bien, que nos dijeras qué mensaje te da, eso ayudaría.

Neftali [Germán.Estévez] 04-11-2005 17:56:35

Por los pelos Van Troi..., pensamos los mismo (por dos veces -aunque en orden contrario- :D), sólo que fuiste más rápido...

pyanqn 04-11-2005 18:03:11

Ok.
Código Delphi [-]
 
     try
       if ((FrmSeleccion.Showmodal)=mrOk) then
       Begin
          //Algo aqui
       end;
     finally
        FrmSeleccion.Free;
     end;
end;

El error es el siguiente: No se puede crear un formulario modal.

vtdeleon 04-11-2005 18:10:52

Saludos

Que propiedades le has cambiado a FrmSeleccion??
Puede ser que tengas la propiedad Visible en True, o que este form sea de tipo Hijo(Child)

lucasarts_18 04-11-2005 18:10:57

Hola:

Para crealo debe ser así:

Código Delphi [-]
 FrmPrincipal.ShowModal;

Tu en ese instante estás preguntando por el estado del formulario Modal, pero en ninguna parte lo muestras modal.

Hasta Luego -

pyanqn 04-11-2005 18:20:32

Ok. Probe con eso tambien, las propiedades estan bien, i.e. la propìedad visible=false, no es de tipo hijo, ni mdi.

vtdeleon 04-11-2005 18:23:00

Saludos
Cita:

Empezado por lucasarts_18
Para crealo debe ser así:

Código Delphi [-]
 FrmPrincipal.ShowModal;

Tu en ese instante estás preguntando por el estado del formulario Modal, pero en ninguna parte lo muestras modal.

Estas equivocado. Con
Código Delphi [-]
if frmseleccion.showmodal=mrOk then
se puede llamar a ese formulario y esperar una respuesta mrResult. La rutina del FrmVisitaNueva se detendra hasta esperar esta respuesta.
Código Delphi [-]
procedure TFrmVisitaNueva.Button1Click(Sender: TObject);
begin
FrmSeleccion:=TFrmSeleccion.Create(Application);
try
if FrmSeleccion.Showmodal=mrok then//Aqui se detiene hasta obtener una respuesta
Begin
//Aqui quiero hacer algo
end;
finally
FrmSeleccion.Free;
end;
end;

lucasarts_18 04-11-2005 18:48:35

Hola:

VtDeleon, tienes toda la razón, acabo de hacer la prueba y es como dices tú.

He aprendido algo nuevo !!!

Gracias..

Hasta Luego -

lucasarts_18 04-11-2005 18:51:35

Hola:

Y esos parentesis metidos entre medio, puede que por eso no funciona, quien sabe :D.


La franja horaria es GMT +2. Ahora son las 09:48:41.

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