SoloCodigo

Programación General => Delphi => Mensaje iniciado por: ioriyagami80 en Lunes 9 de Junio de 2008, 19:42

Título: Error Al Cerrar Formularios Hijos
Publicado por: ioriyagami80 en Lunes 9 de Junio de 2008, 19:42
HOLA DE ANTE MANO AGRADESCO SU TIMPO PARA LEER ESTE PROBLEMA QUE ME SUCITO, BUENO PUES SE TRATA DE LO SIGUIENTE, TENGO UNA APLICACION EN DELHPI 7 Y ACCESS 2000, ES UNA APLICACION CON FORMULARIO PADRE Y VARIOS HIJOS, LOS FORMULARIOS HOJOS LOS MANDO LLAMAR DESEDE EL FORMULARIO PADRE O DESDE EL OTRO FORMULARIO HIJO Y LO HAGO DE LA SIGUIENTE FORMA

if not Assigned(FORM13) then
BEGIN
FORM13:= TFORM13.Create(Application);
END
ELSE
BEGIN
FORM13.SHOW;
FORM13.WindowState:=WSNORMAL;
END;

PARA QUE ME CREES EL FORMULARIO SI NO EXISTE Y DE LO CONTRARIO LO MUESTRE YA QUE PODRIA ESTAR MINIMIZADO, PARA CERRAR EL FORMULARIO HIJO LO HAGO DE LA SIGUIENTE FORMA

form13.Free;
form13:=nil;


EL PROBLEMA ES EL SIGUIENTE, SI ABRO EL FORMULARIO HIJO1 Y DE AHI ABRO EL FORMULARIO HIJO2 Y CERRANDO EL HIJO1 Y DESPUES EL HIJO 2 ME MANDA EL SIGUIENTE ERROR

RAISED EXCEPTION CLASS EACCESS, ACCESS VIOLATION AT ADDRESS 0048085A READ OF ADRESS 00D1952F

CERRANDOLOS EN ORDEN CONTRARIO ES DECIR HIJO2 Y DESPUES HIJO1, PUES LO HACE SIN PROBLEMAS, LES AGRADECERIA QUE ME AYUDARAB A RESOLVER ESTE PROBLEMA
Título: Re: Error Al Cerrar Formularios Hijos
Publicado por: Enko en Lunes 9 de Junio de 2008, 23:35
Código: Text
  1.  
  2. FORM13.ShowModal;
  3.  
  4.  
Con esto, no puede usar el Fromulario Padre sin antes de cerrar al Formulario Hijo.

O bien, en el evento onClose del formulario Padre, chequeas:
Citar
if Assigned(FORM13)
Si existe, cancelas el cierre del formulario.
Título: Re: Error Al Cerrar Formularios Hijos
Publicado por: ioriyagami80 en Lunes 16 de Junio de 2008, 21:55
Cita de: "Enko"
Código: Text
  1.  
  2. FORM13.ShowModal;
  3.  
  4.  
Con esto, no puede usar el Fromulario Padre sin antes de cerrar al Formulario Hijo.

O bien, en el evento onClose del formulario Padre, chequeas:
Citar
if Assigned(FORM13)
Si existe, cancelas el cierre del formulario.
ANTES QUE NADA MUCHAS GRACIAS ENKO, POR CONTESTARME, PUES YA LO INTENTE DE LA FORMA EN QUE DICES Y NO FUNCIONO ME SIGUE MARCANDO ERROR, HE DETECTADO QUE ES CUANDO AGREGO UN REGISTRO POR MEDIO DE UN DBNAVIGATOR, ASI QUE REGRESE AL MODO TRADICIONAL CON EL POST Y YA NO TENGO PROBLEMAS, CIERRO MI FORMULARIO DE LA SIGUIENTE FORMA

FORM1.FREE;
FORM:=NIL;

GRACIAS POR TU AYUDA