Listar Forms

17/09/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 +


Chmelo

Respostas

17/09/2004

Rômulo Barros

Carregando o ListBox com os Nomes dos formulários:

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



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

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

end;


8) 8) 8) 8) 8)


Responder Citar