SetSelectionRange
Formularios, interacción, Unicode
Descripción
Establece el ancla y el cursor de la selección de edición de campo de formulario activa en la unidad de índice solicitada Las dos posiciones se acotan de forma independiente, de modo que un ancla mayor que el cursor crea una selección invertida mientras las propiedades normalizadas
Le due posizioni si 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
| AnchorIndex | Borde fijo de la selección dirigida en IndexUnit, acotado al valor editable |
|---|---|
| CaretIndex | Borde móvil de la selección dirigida en IndexUnit, acotado al valor editable |
| IndexUnit | fsuUTF16CodeUnit, fsuUnicodeCodePoint o fsuGraphemeCluster |
Valor devuelto
Devuelve 1 cuando hay una edición activa y la selección se almacena; de lo contrario, devuelve 0
Rendimiento
Las tablas de límites de puntos de código y de grafemas se construyen perezosamente 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;