다음을 통해 공유


IAnchor::Shift 메서드(textstor.h)

IAnchor::Shift 메서드는 텍스트 스트림 내에서 앵커를 앞으로 또는 뒤로 이동합니다.

구문

HRESULT Shift(
  [in]  DWORD   dwFlags,
  [in]  LONG    cchReq,
  [out] LONG    *pcch,
  [in]  IAnchor *paHaltAnchor
);

매개 변수

[in] dwFlags

앵커 위치 지정을 방지하는 데 사용되는 비트 필드입니다.

의미
TS_SHIFT_COUNT_ONLY
앵커가 이동되지 않습니다. 플래그가 설정되지 않은 경우(dwFlags = 0) 앵커가 다른 매개 변수 설정에 지정된 대로 이동됩니다.

[in] cchReq

텍스트 스트림 내에서 앵커를 이동할 문자 수입니다.

[out] pcch

텍스트 스트림 내에서 이동된 실제 문자 수입니다. 메서드는 실패할 경우 pcch 를 0으로 설정합니다.

[in] paHaltAnchor

시프트를 차단하는 앵커에 대한 참조입니다. 이동을 차단하지 않도록 NULL 로 설정합니다.

반환 값

이 메서드는 이러한 값 중 하나를 반환할 수 있습니다.

Description
S_OK
메서드를 성공적으로 수행했습니다.
E_FAIL
시프트가 실패했습니다.
E_INVALIDARG
입력 매개 변수 값이 잘못되었습니다.
E_NOTIMPL
dwFlags 매개 변수 값은 이 메서드에서 구현되지 않습니다.

설명

cchReqpcch 매개 변수는 음수일 수 있습니다. 즉, 텍스트 스트림에서 뒤로 이동하거나 양수이므로 앞으로 전환을 의미합니다. 문서의 시작 또는 끝이 발견되거나, 지역 경계가 발견되거나, paHaltAnchor가 교대 근무를 차단하는 앵커를 수신하는 경우 이동된 실제 문자 수가 cchReq보다 작을 수 있습니다.

paHaltAnchor가 교대 근무를 차단하는 앵커를 받으면 애플리케이션은 paHaltAnchor가 차지하는 위치에서 교대 근무를 자른다. paHaltAnchor가 교대 근무가 적용되는 텍스트 범위 내에 있지 않으면 교대 근무와 관련이 없으며 무시됩니다.

예를 들어 paHaltAnchor 에서 참조하는 앵커가 스트림의 앵커보다 8자 앞에 있고 클라이언트가 Shift (0, 10, pcch, paHaltAnchor)를 호출하는 경우 종료 시 앵커는 8자만 이동됩니다. paHaltAnchor에서 참조하는 앵커가 이동할 현재 앵커와 같으면 Shift는 앵커를 전혀 이동하지 않고 성공적으로 반환됩니다. 이 경우 pcch 는 0이 됩니다.

앵커 시프트는 문서의 시작 또는 끝에 있는 것처럼 항상 영역 경계에 의해 차단됩니다. 이는 요청된 교대 근무 cchReq보다 절대값이 작은 실제 교대 근무 pcch에 의해 종료 시 표시됩니다. 이 경우 클라이언트는 IAnchor::ShiftRegion 을 사용하여 앵커를 인접 지역으로 이동할 수 있습니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 2000 Professional[데스크톱 앱만]
지원되는 최소 서버 Windows 2000 Server[데스크톱 앱만]
대상 플랫폼 Windows
헤더 textstor.h
DLL Msctf.dll
재배포 가능 파일 Windows 2000 Professional의 TSF 1.0

추가 정보

IAnchor

IAnchor::ShiftRegion