• Lunes 6 de Mayo de 2024, 18:42

Autor Tema:  Error Al Cerrar Formularios Hijos  (Leído 2732 veces)

ioriyagami80

  • Nuevo Miembro
  • *
  • Mensajes: 19
    • Ver Perfil
Error Al Cerrar Formularios Hijos
« en: Lunes 9 de Junio de 2008, 19:42 »
0
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

Enko

  • Miembro de PLATA
  • *****
  • Mensajes: 1562
  • Nacionalidad: 00
    • Ver Perfil
Re: Error Al Cerrar Formularios Hijos
« Respuesta #1 en: Lunes 9 de Junio de 2008, 23:35 »
0
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.

ioriyagami80

  • Nuevo Miembro
  • *
  • Mensajes: 19
    • Ver Perfil
Re: Error Al Cerrar Formularios Hijos
« Respuesta #2 en: Lunes 16 de Junio de 2008, 21:55 »
0
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