Dicas - Busca Rápida

Nesta dica veremos como realizar uma busca rápida em um controle ListBox.

Busca Rápida em um ListBox

 

Nesta matéria veremos como realizar uma busca rápida em um controle ListBox, utilizando a função Perform. A dica é o seguinte: teremos um Edit e um ListBox. No ListBox vamos ter uma lista com vários nomes de países. No Edit, iremos digitar o nome do país a ser localizado, só que, quando começarmos a digitar, automaticamente o item no ListBox será selecionado.

Vamos ao exemplo que ficará mais claro o entendimento da dica. Inicie uma nova aplicação no Delphi e no formulário, adicione os seguintes controles: dois Labels, um Edit e um ListBox. Configure o formulário de acordo com a figura abaixo:

 

Vamos ao código de nossa aplicação. No evento Create do formulário adicione o seguinte código:

 

procedure TForm1.FormCreate(Sender: TObject);

begin

  ListBox1.Items.Add ('Argentina');

  ListBox1.Items.Add ('Brasil');

  ListBox1.Items.Add ('Chile');

  ListBox1.Items.Add ('Equador');

  ListBox1.Items.Add ('Guiana');

  ListBox1.Items.Add ('Paraguai');

  ListBox1.Items.Add ('Uruguai');

  ListBox1.Items.Add ('Venezuela');

  ListBox1.Items.Add ('Xangai');

  ListBox1.Items.Add ('Zaire');

end;

 

O código acima irá adicionar os países no controle ListBox assim que o formulário for criado.

E para o evento Change do controle Edit, iremos adicionar o código que irá fazer a busca, ou seja, quando começarmos a digitar, ele irá buscar no ListBox automaticamente, o conteúdo que foi digitado. Veja abaixo:

 

procedure TForm1.Edit1Change(Sender: TObject);

begin

  Listbox1.Perform(LB_SELECTSTRING,0,LongInt(PChar(Edit1.Text)));

end;

 

Veja o nosso exemplo em execução através da figura abaixo:

 

Observe que ao digitarmos a letra "P", automaticamente é selecionado no ListBox o item que começa com essa letra.

 

Lenine Ribeiro

Lenine@globo.com

Ebook exclusivo
Dê um upgrade no início da sua jornada. Crie sua conta grátis e baixe o e-book

Artigos relacionados