Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 30-05-2012
franroju franroju is offline
Miembro
NULL
 
Registrado: ene 2012
Posts: 55
Poder: 13
franroju Va por buen camino
El método Close lo invoco en un botón. Generalmente, en el form que quiero cerrar realizo consultas a querys o tablas que están en un DataModule.

Puede ser que el error sea por el DataModule y no por el form?

No se, he probado varias cosas, como por ejemplo:

Código Delphi [-]
 if (Form5 <> nil) then begin
    DataModule2.queryLogin.Close;
    Form5:=nil;
    Form5.Close;
  end;

Pero no hay caso. De última, si el código que ingreso no alcanza, solo diganme como harían uds. para tener un Form principal, y otros disponibles para cuando se necesiten, y cuando estos deban cerrarse para volver al principal, no ocurra error de acceso.

Gracias!
Responder Con Cita
  #2  
Antiguo 30-05-2012
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Cita:
Empezado por franroju Ver Mensaje
El método Close lo invoco en un botón
Código Delphi [-]
 if (Form5 <> nil) then begin
    DataModule2.queryLogin.Close;
    Form5:=nil;
    Form5.Close;
  end;
Hola.

Además de lo dicho por los compañeros, no veo la necesidad de comprobar si Form5 existe en ese punto. Si pudiste hacer click en un botón situado en Form5, indudablemente existe

Otra forma en que podés simplificar la creación es:
Código Delphi [-]
...
type
  TForm5 = class(TForm)
    ...
    procedure Button1Click(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure FormDestroy(Sender: TObject);
  private
  public
    class function MostrarModal: TmodalResult;
  end;

...
implementation
...

class function TForm5.MostrarModal: TModalResult;
begin
  with TForm5.Create(nil) do
    Result:= ShowModal;
end;

procedure TForm5.Button1Click(Sender: TObject);
begin
  Close;
end;

procedure TForm5.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  //...
  Action:= caFree;
end;

procedure TForm5.FormDestroy(Sender: TObject);
begin
  //...
  Form5:= nil;
end;
end.

Form principal, llamada de ejemplo:
Código Delphi [-]
  if TForm5.MostrarModal = mrOk then // o simplemente: TForm5.MostrarModal;
   ....

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #3  
Antiguo 31-05-2012
franroju franroju is offline
Miembro
NULL
 
Registrado: ene 2012
Posts: 55
Poder: 13
franroju Va por buen camino
Gracis eficsa y lopital, se solucionó el problema. Uno cree que con un simple show y close queda todo lindo, je.

Abrazo grande
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Access violation al cerrar un formulario elaguna Varios 2 12-11-2010 19:35:46
Access Violation al cerrar .exe mArTaLF Varios 3 16-10-2007 09:11:37
Cerrar forms de manera independiente coleleon OOP 8 01-12-2005 22:54:15
Access Violation al cerrar ClientSocket auveele Internet 0 15-11-2004 00:39:53
Cerrar Forms javiermorales OOP 3 30-06-2003 10:29:32


La franja horaria es GMT +2. Ahora son las 01:22:05.


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
Copyright 1996-2007 Club Delphi