Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   OOP (https://www.clubdelphi.com/foros/forumdisplay.php?f=5)
-   -   Error al llamar un form en ShowModal (https://www.clubdelphi.com/foros/showthread.php?t=28644)

DarkByte 27-12-2005 13:46:28

Error al llamar un form en ShowModal
 
Lo primero, Feliz Navidad :D :D :D :D

Estoy aquí intentando hacer un form con un TCalendar para seleccionar la fecha. Lo intento llamar en ShowModal para que espere a que el form se cierre.. El caso es que recibo un error: Cannot made a visible windows modal.
:(

Código Delphi [-]
procedure TfrmNMVenta.sbFechaClick(Sender: TObject);
var
  frmSeleccionarFecha : TfrmSeleccionarFecha;
begin
  try
    //Creamos el form
    frmSeleccionarFecha := TFrmSeleccionarFecha.Create(Self);
   // Rellenamos las variables del nuevo form con las de este
    If FechaDia  <> '' Then frmSeleccionarFecha.Dia  := FechaDia;
    If FechaMes  <> '' Then frmSeleccionarFecha.Mes  := FechaMes;
    If FechaAnyo <> '' Then frmSeleccionarFecha.Anyo := FechaAnyo;

   //Lo mostramos en modal
    frmSeleccionarFecha.ShowModal;
    
   //Recogemos los resultados
    FechaDia  := frmSeleccionarFecha.Dia;
    FechaMes  := frmSeleccionarFecha.Mes;
    FechaAnyo := frmSeleccionarFecha.Anyo;

   //Lo mostramos
    eFecha.Text := FechaDia+'/'+FechaMes+'/'+FechaAnyo;
  except
    ShowMessage ('Error: No se pudo seleccionar la fecha');
  end;
end;

Gracias por vuetra ayuda! :)

DarkByte 27-12-2005 14:19:42

Añado que es un MDIChild

jachguate 27-12-2005 15:33:04

Los forms MDI no pueden mostrarse de forma MODAL.

Hasta luego.

;)

aledieb 27-12-2005 17:07:31

No estoy seguro pero me parece que delphi cree que el form ya esta mostrado y al hacer el showmodal da el error.
Proba cambiando el showmodal por el show, a ver que pasa, si no da el error cambia el modo en que creas el form.

Espero que te sirva

DarkByte 28-12-2005 09:16:12

:)

El caso, como comentaba Antonio, es que no se puede poner un formulario fsMDIChild en Modal. He tenido que cambiarlo a fsNormal, pues lo que me interesaba no era que se mostrase el form, sino que se mostrase y detuviese el código hasta que este se cerrase.

Gracias por tu aportación, y... jo jo jo, Feliz Navidad


La franja horaria es GMT +2. Ahora son las 19:31:02.

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