Comunicacao entre dois Formularios

Delphi

29/12/2004

Estou com o seguinte problema....
Tenho um Form1 com um botao que, ao clicado, abre um Form2 MODAL. Neste Form2, tenho um combobox, no qual o usuario seleciona um modelo de casa. Este Form2 tem um botao APLICAR, que ao ser clicado, deve setar uma propriedade de um objeto na memoria, que eu instanciei no Form1... Nao estou conseguindo fazer isso.... Este objeto é global na Unit do Form1. Em suma, queria que o Form2 se comunicasse com o Form1, que ele setasse coisas no Form1. Atualmente, o Form1 possui a unit do Form2 declarada no seu USES. Eu nao posso fazer o Form2 ter a Unit do Form1 em seu USES, porque ele da erro de CIRCULAR REFERENCE... O que fazer neste caso, qual metodo eu uso, para, qdo o usuario selecionar um modelo de casa neste form modal, este modelo escolhido seja setado em um objeto na memoria, instanciado no Form1? Aguardo respostas!

Obrigado!

José Gustavo


Joeygustavo

Joeygustavo

Curtidas 0

Respostas

Dopi

Dopi

29/12/2004

Eu nao posso fazer o Form2 ter a Unit do Form1 em seu USES, porque ele da erro de CIRCULAR REFERENCE...


Sim , vc pode fazer uses de ambos os Forms... Mas deve faze-lo na seção Implementation e nao na Interface, nesse caso não haverá problemas de Referencia circular..

Apenas há necessida de fazer uses na clausula Interface de Units que são necessárias para resolver as declaraçoes dos componentes que constam no Form...


GOSTEI 0
Joeygustavo

Joeygustavo

29/12/2004

Mas será que este é o único jeito de eu fazer com que os forms se comuniquem? Gostaria de saber se não existe alguma maneira mais direta.... Desculpem a ignorancia, hehe...

Obrigado!

Jose Gustavo


GOSTEI 0
Dopi

Dopi

29/12/2004

Do jeito que foi implementado acho que essa é a unica maneira... mas não há problema nenhum um Form ´conhecer´ o outro desde que o Uses fique na Implementation....

Observe que o proprio Delphi quando usado o ALT-F11 (use Unit) segue esse precedimento..


GOSTEI 0
POSTAR