SetSelectionRange

폼, 상호 작용, 유니코드

설명

활성 폼 필드 편집 선택의 앵커와 캐럿을 요청한 인덱스 단위로 설정합니다

두 위치는 독립적으로 잘리므로, 캐럿보다 큰 앵커는 뒤집힌 선택을 만들지만 정규화된 SelectionStart와 SelectionLength 속성은 정렬된 상태를 유지합니다

코드 포인트와 그래펨 클러스터 단위는 언제나 유효한 Unicode 경계로 해석되며 서러게이트 쌍, 결합 시퀀스, 결합 이모지 클러스터를 나눌 수 없습니다

선언

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

매개변수

AnchorIndexIndexUnit 단위의 방향성 선택 고정 경계이며 편집 가능한 값으로 제한됩니다
CaretIndexIndexUnit 단위의 방향성 선택 이동 경계이며 편집 가능한 값으로 제한됩니다
IndexUnitfsuUTF16CodeUnit, fsuUnicodeCodePoint 또는 fsuGraphemeCluster

반환값

편집이 활성 상태에서 선택이 저장되면 1을, 그렇지 않으면 0을 반환합니다

성능

코드 포인트와 자소 경계 표는 현재 편집 값에 대해 지연 생성되어 이후 선택 작업에서 재사용되며, SetEditValue로 무효화됩니다

예제

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

참조

GetSelectionRange, TPDFlibFormSession