criando data module ...
27/01/2006
0
nao sei se é usual fazer isso ... mas estou deixando os datamodules sem carregar no comeco da aplicacao, eu crio somente quando vou usar
para criar to usando o seguinte codigo ....
if not Assigned(DmRE)then Application.CreateForm(TDmRE,DmRE);
e no evento onDestroy do datamodule coloco o codigo:
DmRE:= nil;
esse datamodule é destinado apenas a um formulario, criei mais por motivos de organizacao ... quando abro o formulario, crio o datamodule, e depois crio o form ... no evento onclose do form vai o seguinte codigo:
procedure TFrmRE.FormClose(Sender: TObject; var Action: TCloseAction); begin Action:= CaFree; FrmRe:= nil; DmRE.Destroy; end;
agora me digam, isso esta certo???
é uma pratica segura???
conto com sua colaboracao ...
abraçoss
Rafael Gomes
Posts
27/01/2006
Aroldo Zanela
O importante é que ele esteja criado e disponível no momento que necessitar. Particularmente, prefiro criá-lo na inicialização do sistema.
28/01/2006
Tnaires
Acho q seu código está bom, com exceção do DmRE.Destroy. Ao invés disso, chame DmRE.Free.
Abraços
28/01/2006
Tnaires
O método Free verifica se a referência ao objeto não é nil antes de chamar o Destroy.
28/01/2006
Rafael Gomes
ou devo utilizar o seguinte codigo ..
DmRE.Free; DmRE:= nil;
ou somente
DmRE.Free;
desculpe a pergunta, mas ficou meio confuso ...
[]ss
[/i]
28/01/2006
Tnaires
Por isso, vc deve usar o Free, e logo em seguida, atribuir nil à referência.
Abraços
Clique aqui para fazer login e interagir na Comunidade :)