SetSelectionRange

Moduli, interazione, Unicode

Descrizione

Imposta àncora e cursore della selezione della modifica attiva del campo modulo nell'unità di indice richiesta Le due posizioni vengono limitate indipendentemente, quindi un'àncora maggiore del cursore crea una selezione invertita mentre le proprietà normalizzate

Le due posizioni vengono limitate in modo indipendente, così un'ancora maggiore del caret crea una selezione invertita mentre le proprietà normalizzate SelectionStart e SelectionLength restano ordinate

Le unità di punto di codice e di cluster di grafemi si risolvono sempre a confini Unicode validi e non possono dividere una coppia surrogata, una sequenza combinante né un cluster di emoji uniti

Dichiarazione

function SetSelectionRange(AnchorIndex, CaretIndex: Integer;
  IndexUnit: TPDFlibFormSelectionUnit): Integer;

Parametri

AnchorIndexBordo fisso della selezione direzionale in IndexUnit, limitato al valore modificabile
CaretIndexBordo mobile della selezione direzionale in IndexUnit, limitato al valore modificabile
IndexUnitfsuUTF16CodeUnit, fsuUnicodeCodePoint oppure fsuGraphemeCluster

Valore restituito

Restituisce 1 quando una modifica è attiva e la selezione è memorizzata, altrimenti 0

Prestazioni

Le tabelle delle frontiere di punto di codice e di grafema vengono costruite in modo differito per il valore di modifica corrente, riutilizzate dalle successive operazioni di selezione e invalidate da SetEditValue

Esempio

if Session.BeginEdit(FieldIndex) = 1 then
begin
  Session.SetEditValue('A' + WideChar($D83D) + WideChar($DE00) + 'B');
  Session.SetSelectionRange(1, 2, fsuUnicodeCodePoint);
end;

Vedere anche

GetSelectionRange, TPDFlibFormSession