Sélection de texte
Remonter à Manipulation du texte dans les contrôles
Pour transférer du texte d'un contrôle de saisie dans le presse-papiers, il faut d'abord sélectionner ce texte. La possibilité de mettre en surbrillance le texte sélectionné est intégrée aux composants éditeur. Lorsque l'utilisateur sélectionne un texte, celui-ci apparaît en surbrillance.
Le tableau ci-dessous présente les propriétés couramment utilisées pour manipuler le texte sélectionné.
Propriété | Description |
---|---|
SelText | Contient une chaîne représentant le texte sélectionné dans le composant. |
SelLength | Contient la longueur d'une chaîne sélectionnée. |
SelStart | Contient la position de départ d'une chaîne par rapport au début du tampon de texte d'un contrôle de saisie. |
Par exemple, le gestionnaire d'événement OnFind suivant recherche dans un composant Memo le texte spécifié dans la propriété FindText d'un composant boîte de dialogue de recherche. S'il est trouvé, la première occurrence du texte dans Memo1 est sélectionnée.
procedure TForm1.FindDialog1Find(Sender: TObject);
var
I, J, PosReturn, SkipChars: Integer;
begin
for I := 0 to Memo1.Lines.Count do
begin
PosReturn := Pos(FindDialog1.FindText, Memo1.Lines[I]);
if PosReturn <> 0 then { found! }
begin
SkipChars := 0;
for J := 0 to I - 1 do
SkipChars := SkipChars + Length(Memo1.Lines[J]);
SkipChars := SkipChars + (I * 2);
SkipChars := SkipChars + PosReturn - 1;
Memo1.SetFocus;
Memo1.SelStart := SkipChars;
Memo1.SelLength := Length(FindDialog1.FindText);
Break;
end;
end;
end;