Fórum Como quot;pegarquot; os Forms do projeto?? #243427

16/07/2004

0

Colegas..

Preciso de pegar os forms de todo o projeto, mas o problema é que estou armazenando em um vetor de um componente ..

Como faço isso..

Obs : os meus forms não são criados pelo editor, mas manualmente assim :

Application.CreateForm(TForm1, Form1);
Form1.ShowModal;
Form1.Release;

Agradeço antecipadamente..

Cabelo


Cabelo

Cabelo

Responder

Posts

16/07/2004

Nildo

var
   nAux: Integer;
begin
   for nAUx := 0 to Application.ComponentCount - 1 do
      if Application.Components[ nAUx ] is TForm then
         ShowMessage( TFOrm( Application.Components[ nAUx ] ).Name );
end;



Responder

Gostei + 0

16/07/2004

Cabelo

Nildo..

Isto que vc me passou eu já faço..

O meu problema está no seguinte, eu tenho um componente que faz atualizações nos cadastros de algumas tabelas..

Quando fechar o componente, preciso atualizar os ClientDataSet da aplicação principal, mas como estou dentro da aplicação do componente, não consigo pegar o form que chamou o componente..

Acho que consegui me explicar melhor..

Resumindo, preciso (como se fosse) de contar os forms entre dois aplicativos distintos, e indicar qual é o form que chamou a aplicação e atualizar oa ClienDataSet..

agradeço sua atenção..

Cabelo


Responder

Gostei + 0

16/07/2004

Nildo

Porque você não cria uma variável de controle que armazena o Form no momento que você chama ele?


Responder

Gostei + 0

16/07/2004

Cabelo

Ó problema seria na atualização dos forms que derivam deste, e que podem já estar abertos..

por isso preciso do vetor, para saber qual está chamando, qual está aberto, e qual são os filhos..

Cabelo


Responder

Gostei + 0

16/07/2004

Paulo_amorim

Ó problema seria na atualização dos forms que derivam deste, e que podem já estar abertos.. por isso preciso do vetor, para saber qual está chamando, qual está aberto, e qual são os filhos.. Cabelo


Olá

Se vc constrói seu componente do modo ´comum´
constructor Create(AOwner: TComponent)
então vc ja tem o Form que chamou: AOwner.
Caso contrário, vc pode modificar o construtor para passar o Form na chamada.

Mas como vc vai saber quem eh filho do form que chamou? Você já tem esse controle?

Até+


Responder

Gostei + 0

16/07/2004

Nildo

Bom nesse caso, ´eu acho´ que você vai ter que criar esse vetor manualmente e ir alimentando na medida que você vai abrindo os Forms.


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar