Associar o 'nil' a refer�ncia do form libera mem�ria sim!

no onClose coloco o action := caFree

mas tbem fa�o um override no m�todo destructor e associo o nil a refer�ncia
do form.

destructor TFConsAprovacaoCotacoes.Destroy;
begin
  dmAprovacaoCotacoes.Free;
  FConsAprovacaoCotacoes := nil;
  inherited;
end;


� s� fazer o teste. Crie os forms da seguinte maneira:

  if not Assigned(FCadLanctoPagar) then
    FCadLanctoPagar := TFCadLanctoPagar.Create(Self);
  FCadLanctoPagar.show;

O assigned verifica se existe alguma inst�ncia em mem�ria do form...se naum
tiver, uma nova inst�ncia � criada, mas se tiver, a aplica��o apenas mostra.

Sem o nil, depois de criado uma vez o form, o sistema n�o passa mais na
segunda linha.

[ ]'s

Rodrigo



----- Original Message -----
From: "Walter Alves Chagas Junior" <[EMAIL PROTECTED]>
To: <[email protected]>
Sent: Monday, December 27, 2004 11:21 AM
Subject: RES: [delphi-br] Abertura de forms



Melhor usar o FreeandNil n�o??

FreeAndNil(Form1);



 []s

 Walter Alves Chagas Junior
 Projeto e desenvolvimento
 Telemont Engenharia de telecomunica��es
 [EMAIL PROTECTED]
 Fone: (31) 3389-8215 Fax: (31) 3389-8200



> -----Mensagem original-----
> De: Marcelo Almeida [mailto:[EMAIL PROTECTED]
> Enviada em: segunda-feira, 27 de dezembro de 2004 08:19
> Para: [email protected]
> Assunto: Re: [delphi-br] Abertura de forms
>
>
>
> Marcos Jordao wrote:
>
> >e no OnClose:
> >
> >Form1 := nil;
> >
> >Assim funciona bem e o nil libera o Form da mem�ria.
> >
> >
>
> Delphi n�o � java, colocar nil na v�riavel que identifica a instancia
> n�o libera memoria nenhuma.
> O correto para liberar a memoria � colocar "action := cafree" mesmo.
>
> --
> Marcelo Almeida
>
>
>
> --
> <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>
>
> Para ver as mensagens antigas, acesse:
>  http://br.groups.yahoo.com/group/delphi-br/messages
>
> Para falar com o moderador, envie um e-mail para:
>  [EMAIL PROTECTED] ou [EMAIL PROTECTED]
>
> Links do Yahoo! Grupos
>
>
>
>
>
>
>
>


[As partes desta mensagem que n�o continham texto foram removidas]



--
<<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>

Para ver as mensagens antigas, acesse:
 http://br.groups.yahoo.com/group/delphi-br/messages

Para falar com o moderador, envie um e-mail para:
 [EMAIL PROTECTED] ou [EMAIL PROTECTED]

Links do Yahoo! Grupos













-- 
<<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>

Para ver as mensagens antigas, acesse:
 http://br.groups.yahoo.com/group/delphi-br/messages

Para falar com o moderador, envie um e-mail para:
 [EMAIL PROTECTED] ou [EMAIL PROTECTED]
 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
    http://br.groups.yahoo.com/group/delphi-br/

<*> Para sair deste grupo, envie um e-mail para:
    [EMAIL PROTECTED]

<*> O uso que voc� faz do Yahoo! Grupos est� sujeito aos:
    http://br.yahoo.com/info/utos.html

 



Responder a