ITextRange.Move(TextRangeUnit, Int32) 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
삽입 지점을 지정된 단위 수만큼 앞으로 또는 뒤로이동합니다. 텍스트 범위가 퇴행되지 않으면 개수따라 텍스트 범위의 시작 또는 끝 위치에 있는 삽입 지점으로 축소된 다음 이동됩니다.
public:
int Move(TextRangeUnit unit, int count);
int Move(TextRangeUnit const& unit, int const& count);
public int Move(TextRangeUnit unit, int count);
function move(unit, count)
Public Function Move (unit As TextRangeUnit, count As Integer) As Integer
매개 변수
- unit
- TextRangeUnit
삽입 지점을 이동할 단위입니다. 기본값은 문자.
- count
-
Int32
int
삽입 지점을 이동할
반환
int
삽입 포인터가 이동할 실제
설명
범위가 퇴화(삽입 지점)인 경우 이 메서드는 삽입 지점을
범위가 퇴행되지 않고
이 메서드는 실제로 이동된
개수 Ctrl+오른쪽 화살표를 누른 횟수에 해당합니다.
예를 들어 다음 그림 둘 다에 표시된 선택 영역에 대해 Ctrl+오른쪽 화살표를 누르면 문자 위치 8에 삽입 지점이 나타납니다. 이 명령은 끝부분에 있는 선택 영역(각각 7과 8)을 축소하고 다음 Word 경계로 이동하기 때문입니다.
첫 번째 선택 영역에는 문자 위치 7의 공백이 포함되지 않으므로 Ctrl+오른쪽 화살표가 공백을 지나 문자 위치 8의 **Word** 경계로 이동합니다. 범위의 끝 위치는 이미 두 번째 선택 영역의 **Word** 경계에 있으므로 Ctrl+오른쪽 화살표는 해당 경계에서 선택 영역을 축소합니다. 마찬가지로 Ctrl+왼쪽 화살표는 이 텍스트에 대해 'Move(Word, -1)'와 같이 작동합니다. 그러나 Ctrl+왼쪽 화살표는 문자 위치 4에서 두 번째 선택 영역을 축소한 다음 0으로 이동합니다. 이는 동작 방향의 다음 **Word** 경계이기 때문입니다.반환 인수는 퇴행되지 않은 범위를 축소하고 단위 경계로 이동하기 위한 단위 하나를 포함하여 삽입 지점이 이동되는 단위수와 동일하게 설정됩니다. 따라서 범위가 스토리 끝에 있는 삽입 지점일 때처럼 동작이 없고 축소가 발생하지 않으면 결과는 0으로 설정됩니다. 이 방법은 전체 스토리를 처리하는 앱 루프를 제어하는 데 유용합니다.
앞에서 언급한 두 경우 모두 범위가 축소되었으므로 Move(Word, 1)
호출하면 결과가 1로 설정됩니다. 마찬가지로 Move(Word, -1)
호출하면 두 경우 모두 결과가 1로 설정됩니다.
동작 방향은 일반 텍스트 백업 저장소의 논리적 문자 순서를 나타냅니다. 이 방법은 국제 소프트웨어에서 왼쪽, 오른쪽 및 위쪽 및 아래쪽과 같은 기하학적 순서의 문제를 방지합니다. 물론 키보드에는 기하학적 움직임을 호출하는 화살표 키가 있기 때문에 편집 엔진에는 이러한 기하학적 메서드가 여전히 필요합니다.
ITextSelection UI 메서드는 마치 단일 문자인 것처럼 CR/LF(캐리지 리턴/줄 바꿈)를 통해 백업되지만 ITextRange.Move 메서드는 CR/LF(캐리지 리턴/줄 바꿈)를 두 문자로 계산합니다. 유니코드 단락 구분 문자인 0x2029 허용되더라도 CR으로 표현되는 단락 구분 기호로 단일 문자를 사용하는 것이 더 좋습니다. 일반적으로 리치 편집 컨트롤은 CR/LF(캐리지 리턴/줄 바꿈), CR, LF, VT(세로 탭), FF(양식 피드) 및 0x2029 지원합니다. Microsoft Rich Edit 2.0은 이전 버전과의 호환성을 위해 CR/CR/LF도 지원합니다.