Páginas

sexta-feira, 2 de junho de 2017

Componentes no Form, Lista no ShowMessage



Vamos passar todos os componentes adicionados no form, para ShowMessage, vamos criar um novo Projeto.

1 - Vamos criar um novo projeto: File - New - VCL Forms Application - Delphi.



2 - Em seguida vamos adicionar:
5    Panel
4    Image
14  Label
8    BitBtn
7    ProgressBar
1    Button
1    ComBoBox

3 - Em nosso ComboBox na propriedade Items vaos adicionar.
TPanel
TImage
TBitBtn
TLabel
TProgressBar

Ainda na propriedade do nosso ComboBox em Style mudamos para csDropDownList.

4 - agora vamos aos códigos, primeiro vamos criar uma Function onde vai receber o tipo de componente que vamos listar em nosso ShowMessage.

pressionamos F12, e vamos a até  private e adicionamos Function listacomponente(list:String):String;
ficara assim:
  private
  Function listacomponente(list:String):String;
    { Private declarations }

pressionamos CTRL+SHIFT+C. esse atalho ira adicionar a linha de código:  

function TForm1.listacomponente(list: String): String;
begin

end;
 ou podemos adicionar manualmente 
abaixo de: 

implementation
{$R *.dfm
function TForm1.listacomponente(list: String): String;
begin

end;

OBS: nossa function recebera uma valor do tipo String e retornara outro valor do tipo String.

5 - Agora adicionamos o código a nossa Function e ficara assim:
function TForm1.listacomponente(list: String): String;
var
 I,T : Integer;
Lista:TStringList;
begin
try
Lista:=TStringList.Create;
for I := 0 to Application.ComponentCount - 1 do
  for T := 0 to TCustomForm(Application.Components[I]).ComponentCount - 1 do
    IF LowerCase(TCustomForm(Application.Components[I]).Components[T].ClassName) = LowerCase(list) Then
      Lista.Add(TCustomForm(Application.Components[I]).Components[T].Name);
  Result:=Lista.Text;
finally
  ShowMessage(Result);
  Lista.Free;
end;

end;

6 - Em nosso Button damos um click duplo, ou na Object Inspector - Events - OnClick
adicionamos:
listacomponente(Combobox1.Text);

7 - Agora vamos ver o resultado; F9, selecionamos o tipo de componente em nosso Combobox:





É isso ai, deixe seu comentario.






Nenhum comentário:

Postar um comentário