1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
|
procedure TPrincipal.tbChercheClick(Sender: TObject);
begin
FindDialog1.Position := Point(Edits.Left + Edits.Width, Edits.Top);
FindDialog1.Execute;
end;
procedure TPrincipal.FindDialog1Find(Sender: TObject);
var
FoundAt: LongInt;
StartPos, ToEnd: Integer;
begin
with Edits do
begin
{ commence la recherche après la sélection en cours s'il y en a une }
{ sinon, commence au début du texte }
if SelLength <> 0 then
StartPos := SelStart + SelLength
else
StartPos := 0;
{ ToEnd indique la longueur entre StartPos et la fin du texte du contrôle éditeur de texte enrichi }
ToEnd := Length(Text) - StartPos;
FoundAt := FindText(FindDialog1.FindText, StartPos, ToEnd, [stMatchCase]);
if FoundAt <> -1 then
begin
SetFocus;
SelStart := FoundAt;
SelLength := Length(FindDialog1.FindText);
end;
end;
end; |
Partager