SetSelectionRange

Formularios, interacción, Unicode

Descripción

Establece el ancla y el cursor de la selección de edición del campo de formulario activo en la unidad de índice solicitada Las dos posiciones se ajustan de forma independiente, de modo que un ancla mayor que el cursor crea una selección invertida mientras las propiedades normalizadas

Las dos posiciones se acotan de forma independiente, así que un ancla mayor que el cursor crea una selección invertida mientras las propiedades normalizadas SelectionStart y SelectionLength permanecen ordenadas

Las unidades de punto de código y de clúster de grafemas siempre se resuelven a límites Unicode válidos y no pueden dividir un par sustituto, una secuencia combinante ni un clúster de emoji unidos

Declaración

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

Parámetros

AnchorIndexBorde fijo de la selección dirigida en IndexUnit, ajustado al valor editable
CaretIndexBorde móvil de la selección dirigida en IndexUnit, ajustado al valor editable
IndexUnitfsuUTF16CodeUnit, fsuUnicodeCodePoint o fsuGraphemeCluster

Valor devuelto

Devuelve 1 cuando hay una edición activa y la selección se almacenó; en caso contrario, 0

Rendimiento

Las tablas de límites de puntos de código y grafemas se construyen de forma diferida para el valor de edición actual, se reutilizan en operaciones de selección posteriores y se invalidan con SetEditValue

Ejemplo

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

Véase también

GetSelectionRange, TPDFlibFormSession