IDCompositionSurface::Scroll 메서드(dcomp.h)
Microsoft DirectComposition 논리 표면의 사각형 영역을 스크롤합니다.
구문
HRESULT Scroll(
[in] const RECT *scrollRect,
[in, optional] const RECT *clipRect,
[in] int offsetX,
[in] int offsetY
);
매개 변수
[in] scrollRect
표면의 왼쪽 위 모서리를 기준으로 스크롤할 표면의 사각형 영역입니다. 이 매개 변수가 NULL이면 전체 표면이 스크롤됩니다.
[in, optional] clipRect
clipRect는 스크롤의 대상(오프셋 후 scrollRect)을 클리핑합니다. 스크롤할 유일한 비트맵 콘텐츠는 스크롤이 완료된 후 클립 사각형 내에 남아 있는 콘텐츠입니다.
[in] offsetX
가로 스크롤 크기(픽셀)입니다. 양수 값을 사용하여 오른쪽으로 스크롤하고 음수 값을 사용하여 왼쪽으로 스크롤합니다.
[in] offsetY
세로 스크롤 크기(픽셀)입니다. 양수 값을 사용하여 아래로 스크롤하고 음수 값을 사용하여 위로 스크롤합니다.
반환 값
함수가 성공하면 S_OK를 반환합니다. 그러지 않으면 HRESULT 오류 코드를 반환합니다. 오류 코드 목록은 DirectComposition 오류 코드를 참조하세요.
설명
이 메서드를 사용하면 애플리케이션이 DirectComposition 표면 개체의 하위 사각형을 blt/copy할 수 있습니다. 이렇게 하면 이미 사용 가능한 콘텐츠를 다시 렌더링할 수 없습니다.
scrollRect 사각형은 표면의 경계에 포함되어야 합니다. scrollRect 사각형이 표면의 범위를 벗어나면 이 메서드가 실패합니다.
스크롤 작업(원본)에서 복사한 비트는 scrollRect 및 clipRect 사각형의 교집합에 의해 정의됩니다.
화면에 표시되는 비트(대상)는 오프셋 원본 사각형과 clipRect의 교차점에 의해 정의됩니다.
BeginDraw를 호출하기 전이나 EndDraw를 호출한 후에만 스크롤 작업을 호출할 수 있습니다. 일시 중단되거나 다시 시작된 표면은 여전히 업데이트되고 있기 때문에 스크롤할 후보가 아닙니다.
애플리케이션은 IDCompositionVirtualSurface 의 스크롤 가능한 영역이 유효한 픽셀로 제한되도록 해야 합니다. scrollRect에서 잘못된 픽셀에 대한 동작이 정의되지 않았습니다.
트리밍 또는 크기 조정 작업에 의해 삭제된 가상 표면 하위 사각형 영역은 트리밍 또는 크기 조정이 동일한 일괄 처리에 적용되더라도 스크롤할 수 없습니다. 자르 기 및 크기 조정 이 즉시 적용됩니다.
요구 사항
지원되는 최소 클라이언트 | Windows 8 [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows Server 2012 [데스크톱 앱만 해당] |
대상 플랫폼 | Windows |
헤더 | dcomp.h |
라이브러리 | Dcomp.lib |
DLL | Dcomp.dll |