Circular unit reference
13/01/2006
0
tenho a seguinte situação:
no Form1 delaro uma property do tipo de um TDataModule1 e no DataModule1 declaro uma property do tipo TForm1.
tá aí a referência circular. sendo que eu preciso fazer assim.
como posso resolver isso?
no Form1 delaro uma property do tipo de um TDataModule1 e no DataModule1 declaro uma property do tipo TForm1.
tá aí a referência circular. sendo que eu preciso fazer assim.
como posso resolver isso?
Raserafim
Curtir tópico
+ 0
Responder
Post mais votado
13/01/2006
isso ocoore quando faz referencia a uma unidade em outra unidade e a outra na uma...
por exemplo, digamos que você tenha uma Unit1 e uma Unit2
A unit1 pode estar assim
e na unit 2
isso é a referencia circular.
para resolver, vc vai ter que declarar a sua property do tipo Form1 em um lugar fora da classe, depois do [b:47edbaa21c]implementation[/b:47edbaa21c], remover a Unit do form do uses ´de cima´ e colocar isso depois do implementation:
ou pode fazer isso na unit do form ao invez na do DataModule.
A solução é você ter uma das units (a ´secundária´) declarada no uses ´de baixo´, depois do implementation, ai vc pode fazer referencia entra ambas as units.
por exemplo, digamos que você tenha uma Unit1 e uma Unit2
A unit1 pode estar assim
unit Unit1;
uses
Windows, ..., Classes, ...., [b:47edbaa21c]Unit2[/b:47edbaa21c];
e na unit 2
unit Unit2;
uses
Windows, ..., Classes, ...., [b:47edbaa21c]Unit1[/b:47edbaa21c];
isso é a referencia circular.
para resolver, vc vai ter que declarar a sua property do tipo Form1 em um lugar fora da classe, depois do [b:47edbaa21c]implementation[/b:47edbaa21c], remover a Unit do form do uses ´de cima´ e colocar isso depois do implementation:
uses UnitDoForm
ou pode fazer isso na unit do form ao invez na do DataModule.
A solução é você ter uma das units (a ´secundária´) declarada no uses ´de baixo´, depois do implementation, ai vc pode fazer referencia entra ambas as units.
Marcelo Saviski
Responder
Mais Posts
Clique aqui para fazer login e interagir na Comunidade :)