Array
(
)

Listar Forms

Chmelo
   - 17 set 2004

Pessoal, gostaria de saber se alguem ja fez ou tem uma rotina que pega os nomes do forms de um projeto e mostra dentro de um listbox/listview/memo ou qualquer outro componente.E tambem se consigo ao clicar no nome do form ver os componentes existente dentro dele.

ex. tenho um projeto (Teste.dpr).

dentro de um edit digitaria o nome do projeto (Teste)

dentro de um listbox/combobox me mostraria os nomes dos forms deste projeto.

quando clicar em cima do nome do form aparecer em um listbox os nomes dos componentes existentes dentro deste form.

valeu pessoal.....

ate +


Rômulo Barros
   - 17 set 2004

Carregando o ListBox com os Nomes dos formulários:

#Código

procedure TForm1.Button1Click(Sender: TObject);
Var
intC : Byte;
begin
For intC := 0 To Application.ComponentCount -1 Do
Begin
If(Application.Components[intC] is TForm)Then
ListBox1.Items.Add(TForm(Application.Components[intC]).Name);
End;
end;



Clicando em um determinado form do listbox e exibindo seus componentes:

#Código
procedure TForm1.ListBox1Click(Sender: TObject);
Var
intC : Byte;
intD : Byte;
begin
For intC := 0 To Application.ComponentCount -1 Do
Begin
If(Application.Components[intC] is TForm)Then
Begin
If(TForm(Application.Components[intC]).Name = ListBox1.Items[ListBox1.ItemIndex])Then
Begin
For intD := 0 To (Application.Components[intC] As TForm).ComponentCount -1 Do
Begin
ShowMessage(TForm((Application.Components[intC] As TForm).Components[intD]).name);
End;
Break;
End;
End;
End;

end;


8) 8) 8) 8) 8)