SetSelectionRange
Formuláře, interakce, Unicode
Popis
Nastaví kotvu a kurzor aktivního výběru úpravy pole formuláře v požadované jednotce indexu
Dvě pozice se omezují nezávisle, takže kotva větší než kurzor vytvoří obrácený výběr, zatímco normalizované vlastnosti SelectionStart a SelectionLength zůstávají uspořádané
Jednotky kódových bodů a klastrů grafémů se vždy rozliší na platné hranice Unicode a nemohou rozdělit náhradní pár, kombinovanou sekvenci ani spojený klastr emoji
Deklarace
function SetSelectionRange(AnchorIndex, CaretIndex: Integer;
IndexUnit: TPDFlibFormSelectionUnit): Integer;
Parametry
| AnchorIndex | Pevná hrana směrovaného výběru v IndexUnit, omezená na upravitelnou hodnotu |
|---|---|
| CaretIndex | Pohyblivá hrana směrovaného výběru v IndexUnit, omezená na upravitelnou hodnotu |
| IndexUnit | fsuUTF16CodeUnit, fsuUnicodeCodePoint nebo fsuGraphemeCluster |
Návratová hodnota
Vrací 1, když je aktivní úprava a výběr se uložil, jinak 0
Výkon
Tabulky hranic kódových bodů i grafémů se pro aktuální hodnotu úpravy sestaví líně, znovu použijí pozdější operace výběru a zneplatní se přes SetEditValue
Příklad
if Session.BeginEdit(FieldIndex) = 1 then
begin
Session.SetEditValue('A' + WideChar($D83D) + WideChar($DE00) + 'B');
Session.SetSelectionRange(1, 2, fsuUnicodeCodePoint);
end;