RichEdit nesnesinin içeriğinde arama yapmak istiyorsanız FindText() metodunu kullanabilirsiniz. Bu konuda bilgi vermek için forma bir düğme yerleştirdim ve aşağıda verdiğim kodu hazırladım. Aramaya RichEdit nesnesi içeriğinin başından itibaren yapmak istediğim için FindText metoduna 2. parametre olarak 0 verdim. Bu kodu geliştirip aynı bilginin bulunduğu 2. veya 3. yere gidebilirsiniz.
procedure TForm1.BulClick(Sender: TObject);
Var
Sonuc, Uzunluk :Integer;
Aranan : String;
Secenek : TSearchTypes;
begin
Uzunluk := Length(RichEdit1.Text);
Aranan := InputBox('Aranacak bilgi', '', '');
Secenek := Secenek + [stMatchCase];
Sonuc := RichEdit1.FindText(Aranan, 0, Uzunluk, Secenek);
If Sonuc <> -1 Then
begin
RichEdit1.SetFocus;
RichEdit1.SelStart := Sonuc;
RichEdit1.SelLength := Length(Aranan);
end
else
ShowMessage('Aradığınız bilgi bulunamadı');
end;
Bu kodda tanımladığım ve FindText() metoduna 4. parametre olarak TSearchTypes tipi ile arama yapılırken küçük-büyük harf ayrımının yapılıp yapılmayacağı ve aranan bilginin bağımsız kelime olup olmadığı konusunda ayarlama yapılabilir. Bu örnekte bu değişkene [stMatchCase] seçeneğini aktardığım küçük büyük harf ayrımı yapılır. TSearchTypes tipinin 2. elemanına ise “stWholeWord” seçeneği aktarılabilinir.