a) Application.CreateForm(TfmClientes, fmClientes);
Cria o Form; o proprietário é a aplicação.

b) fmClientes := TForm.Create(self);
Cria o Form; o proprietário é ele mesmo.

c) fmClientes := TForm.Create(Application);
Cria o Form; o proprietário é a aplicação.

d) fmClientes := TForm.Create(nil);
Cria o Form; teoricamente sem proprietário; na prática é a aplicação.

e) fmClientes := TfmClientes.Create(self);
Cria o Form; o proprietário é ele mesmo.

f) fmClientes := TfmClientes.Create(Application);
Cria o Form; o proprietário é a aplicação.

g) fmClientes := TfmClientes.Create(nil);
Cria o Form; teoricamente sem proprietário; na prática é a aplicação.

Diferenca entre elas !!

Quando você cria um Form dinamicamente:
1. se criar através de CreateForm, que é um método de TApplication, você
passa como parâmetro a instância da classe e o nome do seu objeto
(TfmClientes, fmClientes);

2. se criar através de Create - método de TForm, entre outros - você passa
como parâmetro o proprietário do componente criado (no caso o Form).
2.1 se o proprietário for a aplicação, o Form só será destruído quando você
finalizar o aplicativo
ou se você declarar Free ou Destroy no seu programa; (casos a, c, d, f, g);
2.2 se o proprietário for ele mesmo (self), o form terá que ser destruído
por você;
2.3 se você criar, por exemplo, Form2 e passar como proprietário Form1; no
momento em que
Form1 for destruído, Form2 também o será.

Quanto à melhor maneira, depende de como você quer controlar a aplicação,
mas leve em conta que enquanto um objeto não é destruído, ele está na
memória.


Autor desconhecido
fonte: http://www.delphibr.com.br

 
 
 []s

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


[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

<*> 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