IViewObject::GetColorSet 메서드(oleidl.h)
해당 매개 변수를 사용하여 개체가 IViewObject::D raw 메서드에서 그리는 데 사용할 논리 팔레트를 반환합니다.
구문
HRESULT GetColorSet(
[in] DWORD dwDrawAspect,
[in] LONG lindex,
[in] void *pvAspect,
[in] DVTARGETDEVICE *ptd,
[in] HDC hicTargetDev,
[out] LOGPALETTE **ppColorSet
);
매개 변수
[in] dwDrawAspect
개체를 표현할 방법을 지정합니다. 표현에는 콘텐츠, 아이콘, 축소판 그림 또는 인쇄된 문서가 포함됩니다. 유효한 값은 열거형 DVASPECT에서 가져옵니다. 자세한 내용은 DVASPECT 열거형을 참조하세요.
[in] lindex
그리기 작업의 대상인 개체의 부분입니다. 해석은 dwDrawAspect에 따라 다릅니다. 자세한 내용은 DVASPECT 열거형을 참조하세요.
[in] pvAspect
dwDrawAspect에 지정된 개체의 뷰에 대한 추가 정보에 대한 포인터입니다. 현재 측면 중 어느 것도 추가 정보를 지원하지 않으므로 pvAspect 는 항상 NULL이어야 합니다.
[in] ptd
개체를 렌더링할 디바이스를 설명하는 DVTARGETDEVICE 구조체에 대한 포인터입니다. NULL인 경우 기본 대상 디바이스(일반적으로 표시)에 대해 뷰를 렌더링해야 합니다. NULL 이외의 값은 hicTargetDev 및 hdcDraw와 함께 해석됩니다. 예를 들어 hdcDraw 가 프린터를 디바이스 컨텍스트로 지정하는 경우 ptd는 해당 프린터 디바이스를 설명하는 구조를 가리킵니다. hicTargetDev가 유효한 값이거나 hicTargetDev가 NULL인 경우 인쇄 미리 보기 모드로 표시될 수 있는 경우 데이터가 실제로 인쇄될 수 있습니다.
[in] hicTargetDev
개체가 디바이스 메트릭을 추출하고 디바이스의 기능을 테스트할 수 있는 ptd 매개 변수로 표시된 대상 디바이스에 대한 정보 컨텍스트입니다. ptd가 NULL인 경우 개체는 hicTargetDev 매개 변수를 무시해야 합니다.
[out] ppColorSet
LOGPALETTE 구조체에 대한 포인터를 수신하는 LOGPALETTE 포인터 변수의 주소입니다. LOGPALETTE 구조체에는 IViewObject::D raw 가 dwAspect, lindex, pvAspect, ptd 및 hicTargetDev에 대해 동일한 매개 변수로 호출된 경우 사용할 색 집합이 포함되어 있습니다. ppColorSet이 NULL이면 개체는 팔레트를 사용하지 않습니다.
반환 값
이 메서드는 성공에 대한 S_OK 반환합니다. 가능한 다른 반환 값은 다음과 같습니다.
반환 코드 | 설명 |
---|---|
|
색 집합이 비어 있거나 개체가 정보를 제공하지 않습니다. |
|
개체에 대한 프레젠테이션 데이터가 없습니다. |
|
lindex의 값이 잘못되었습니다. 현재 -1만 지원됩니다. |
|
dwAspect 값이 잘못되었습니다. |
|
제공된 매개 변수 값 중 하나 이상이 잘못되었습니다. |
|
이 작업에 사용할 수 있는 메모리가 부족합니다. |
설명
IViewObject::GetColorSet 메서드는 중첩된 개체를 재귀적으로 쿼리하고 요청된 모든 색의 합집합을 나타내는 색 집합을 반환합니다. 색 집합은 결국 창 프레임을 소유하는 최상위 컨테이너에 percolate됩니다. 이 컨테이너는 포함된 각 개체에서 IViewObject::GetColorSet 을 호출하여 포함된 개체를 그리는 데 필요한 모든 색을 가져올 수 있습니다. 컨테이너는 전체 색상표를 설정하는 데 필요한 다른 색과 함께 가져온 색 집합을 사용할 수 있습니다.
IViewObject::GetColorSet의 OLE 제공 구현은 그림을 그리기 위해 보유하고 있는 데이터를 확인합니다. CF_DIB 그리기 형식인 경우 비트맵에 있는 팔레트가 사용됩니다. 일반 비트맵의 경우 색 정보가 반환되지 않습니다. 그리기 형식이 메타파일인 경우 개체 처리기는 CreatePalette 메타파일 레코드를 찾는 메타파일을 열거합니다. 하나가 발견되면 처리기는 이를 색 집합으로 사용합니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows 2000 Professional[데스크톱 앱만] |
지원되는 최소 서버 | Windows 2000 Server[데스크톱 앱만] |
대상 플랫폼 | Windows |
헤더 | oleidl.h |