SetSelectionRange
Formulär, interaktion, Unicode
Beskrivning
Sätter ankaret och markören för den aktiva formulärfältredigeringens markering i den begärda indexenheten De två positionerna begränsas oberoende, så att ett ankare större än markören skapar en omvänd markering medan de normaliserade egenskaperna
SelectionStart och SelectionLength förblir ordnade
Enheterna kodpunkt och grafemkluster löser alltid upp till giltiga Unicode-gränser och kan inte dela ett surrogatpar, en kombinerande sekvens eller ett hopfogat emojikluster
Kodpunkts- och grafemklusterenheter löser alltid till giltiga Unicode-gränser och kan inte dela ett surrogatpar, en kombinerande sekvens eller ett sammanfogat emoji-kluster
Deklaration
function SetSelectionRange(AnchorIndex, CaretIndex: Integer;
IndexUnit: TPDFlibFormSelectionUnit): Integer;
Parametrar
| AnchorIndex | Fast kant av den riktade markeringen i IndexUnit, begränsad till det redigerbara värdet |
|---|---|
| CaretIndex | Rörlig kant av den riktade markeringen i IndexUnit, begränsad till det redigerbara värdet |
| IndexUnit | fsuUTF16CodeUnit, fsuUnicodeCodePoint eller fsuGraphemeCluster |
Returvärde
Returnerar 1 när en redigering är aktiv och markeringen lagrades, annars 0
Prestanda
Gränstabeller för kodpunkter och grafem byggs först vid behov för aktuellt redigeringsvärde, återanvänds av senare markeringsoperationer och ogiltigförklaras av SetEditValue
Exempel
if Session.BeginEdit(FieldIndex) = 1 then
begin
Session.SetEditValue('A' + WideChar($D83D) + WideChar($DE00) + 'B');
Session.SetSelectionRange(1, 2, fsuUnicodeCodePoint);
end;