Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Impresión
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 21-02-2004
Avatar de mlara
[mlara] mlara is offline
Miembro Premium
 
Registrado: jun 2003
Ubicación: Colombia
Posts: 667
Poder: 21
mlara Va por buen camino
Liberar memoria de un QR.

Hay dos formas de crear un reporte con Quick Report.

1. Creo una forma y arrastro el componente TQuickRep desde la paleta. En este caso la declaración del tipo en el archivo .pas se ve así:

Código:
type
  TForm2 = class(TForm)
    QuickRep1: TQuickRep;
  private
    { Private declarations }
  public
    { Public declarations }
  end;
2. Me voy por File | New | Other..., en la pestaña 'New' selecciono la opción Report, y doy click en OK. En este caso la declaración del tipo en el archivo .pas se ve así:

Código:
type
  TQuickReport1 = class(TQuickRep)
  private

  public

  end;
En el primer caso, para liberar completamente la memoria puedo usar en el evento OnClose de Form2 el siguiente código:

Código:
  Application.ProcessMessages;
  FreeAndNil(QuickRep1);
  Action := caFree;
Entonces visualizaría el reporte y luego lo destruiría así:

Código:
Application.CreateForm(TForm2, Form2);
QuickRep1.Preview;
Form2.Close;
En el segundo caso llamaría el reporte así:

Código:
Application.CreateForm(TQuickReport1, QuickReport1);
QuickReport1.Preview;
En este caso, cuál es la mejor manera de liberar la memoria?
__________________
...y mañana caminaré por las calles pasando inadvertido, como siempre.
Responder Con Cita
  #2  
Antiguo 21-02-2004
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.254
Poder: 27
jachguate Va por buen camino
asi:

Código:
Application.CreateForm(TQuickReport1, QuickReport1);
try
  QuickReport1.Preview;
finally
  QuickReport1.Free;
  QuickReport1 := nil;
end;

solo comento que en el primer caso no es necesario llamar a FreeAndNil en el OnClose, pues el Form2 es quien lo destruiría (al ser el owner del mismo).

Hasta luego.

__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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


La franja horaria es GMT +2. Ahora son las 20:29: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