Liberar Form da Memória
08/11/2005
0
Olá a todos.
Tenho a seguinte dúvida.
Sempre crio o form e apresento assim:
Form := TForm.Create( Application );
Form.ShowModal;
Gostaria de saber em detalhes quando e como usar:
Form.Release.
Form.Free.
Form.Nil.
Form.caFree
Obrigado
Neto
Tenho a seguinte dúvida.
Sempre crio o form e apresento assim:
Form := TForm.Create( Application );
Form.ShowModal;
Gostaria de saber em detalhes quando e como usar:
Form.Release.
Form.Free.
Form.Nil.
Form.caFree
Obrigado
Neto
Neto
Curtir tópico
+ 0
Responder
Posts
08/11/2005
Michael
Olá!
A forma de liberar um form da memória está intimamente ligada à maneira que ele foi criado. O parâmetro que o construtor Create recebe, Owner, indica quem será o proprietário do formulário, e pelas regras da Delphi Language, quem vai liberá-lo da memória qdo este (o Owner) for destruído.
Então, se vc vai criar um form e destruí-lo em seguida, chame Create com Nil. Se vc usar Application (como no seu exemplo), ou Self, então não deve liberá-lo nunca, pois a aplicação ou o objeto referenciado por Self se engarregará de fazê-lo.
Veja este [url=http://delphi.about.com/od/adptips2005/qt/nilselfapp.htm]excelente artigo[/url] (em inglês) sobre o assunto. Eu diria um guia definitivo. ;-)
[]´s
A forma de liberar um form da memória está intimamente ligada à maneira que ele foi criado. O parâmetro que o construtor Create recebe, Owner, indica quem será o proprietário do formulário, e pelas regras da Delphi Language, quem vai liberá-lo da memória qdo este (o Owner) for destruído.
Então, se vc vai criar um form e destruí-lo em seguida, chame Create com Nil. Se vc usar Application (como no seu exemplo), ou Self, então não deve liberá-lo nunca, pois a aplicação ou o objeto referenciado por Self se engarregará de fazê-lo.
Veja este [url=http://delphi.about.com/od/adptips2005/qt/nilselfapp.htm]excelente artigo[/url] (em inglês) sobre o assunto. Eu diria um guia definitivo. ;-)
[]´s
Responder
Clique aqui para fazer login e interagir na Comunidade :)