TListbox Basılan Harfe Göre Arama

Yazdığınız makaleleri ve üyelerimizin işine yarayacağını düşündüğünüz kodlarınızı gönderebilirsiniz. Bu foruma soru sormayın!
Cevapla
RamazanG
Üye
Mesajlar: 73
Kayıt: 16 Tem 2010 02:38

TListbox Basılan Harfe Göre Arama

Mesaj gönderen RamazanG » 27 Eyl 2010 11:38

Makale: Zarko Gajic.
Çeviri: Ramazan Gülbahar.


Resim

Aranacak metni test etmek için StrPCopy arama işlemi yapar.
Perform metodu ListBox1’e LB_SELECTSTRING mesajını direkt gönderir.
LB_SELECTSTRING iki değişken ister: İlk karakterden önceki aranacak nesne – aramaya başlanacak yer "indexStart" için işaretçi.
LB_SELECTSTRING ListBox içinde belirtilen karakterden aramaya başlar, eğer eşleşen bir karakter olursa, o karakterleri seçer, Eğer arama işlemi başarısız olursa, geçerli olan seçili nesne değişmez.

Not: LB_SELECTSTRING ListBox’ın Multiselect özelliği TRUE iken kullanılamaz.

Kod: Tümünü seç

procedure TListBoxSearchForm.Edit1Change(Sender: TObject) ;
 const
   indexStart = -1;
 var
   search : array[0..128] of Char;
 begin
   { Length(Edit1.Text) <= 128  Emin Ol }
   StrPCopy(search, Edit1.Text) ;
   ListBox1.ItemIndex := ListBox1.Perform(LB_SELECTSTRING, indexStart, LongInt(@search));
 end;

Cevapla