Ver Mensaje Individual
  #1  
Antiguo 21-02-2004
Avatar de mlara
[mlara] mlara is offline
Miembro Premium
 
Registrado: jun 2003
Ubicación: Colombia
Posts: 667
Reputación: 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