Forms do projeto

Delphi

29/09/2005

estou com um projeto mdi, e gostaria de saber como eu poderia pegar todos os forms de meu projeto via programacao..

teria dessa forma:

for i:= 0 to application.componentcount do
begin
if components[i] is TForm thne..
....
...

end;

mas acho que ficaria meio demorado, pois terei muitos forms e muitos compontes em cada form..

teria alguma forma mais agil?????


Zumbi

Zumbi

Curtidas 0

Respostas

Michael

Michael

29/09/2005

Olá!

Se os forms forem criados automaticamente pelo Delphi, isto é, se estiverem na lista [b:1bb6a8c301]Auto-create forms[/b:1bb6a8c301], vc pode acessar este valor pela propriedade [b:1bb6a8c301]FormCount[/b:1bb6a8c301], do objeto [b:1bb6a8c301]Screen[/b:1bb6a8c301].

[]´s


GOSTEI 0
Zumbi

Zumbi

29/09/2005

eles nao sao criados pelo auto-create.

pios eles sao mdichild, ai ficariam abertos.......


GOSTEI 0
Massuda

Massuda

29/09/2005

Durante a execução, no form principal (aquele com estilo fsMDIForm) existe uma lista dos forms MDIChild abertos acessível pela propriedade TForm.MDIChildren; o total de forms nessa lista é dado pela propriedade TForm.MDIChildCount. Este exemplo mostra como fechar todas as janelas MDIChild...
var
  I: Integer;
...
  // isto só funciona no form principal
  for I := MDIChildCount - 1 downto 0 do 
    MDIChildren[I].Close;
...



GOSTEI 0
POSTAR