다음을 통해 공유


IViewObjectEx::QueryHitRect 메서드(ocidl.h)

사각형의 점이 개체의 지정된 그리기 측면 내에 있는지 여부를 나타냅니다.

구문

HRESULT QueryHitRect(
  [in]  DWORD   dwAspect,
  [in]  LPCRECT pRectBounds,
  [in]  LPCRECT pRectLoc,
  [in]  LONG    lCloseHint,
  [out] DWORD   *pHitResult
);

매개 변수

[in] dwAspect

요청된 그리기 측면입니다.

[in] pRectBounds

포함하는 창의 클라이언트 좌표에 있는 개체 경계 사각형입니다. 이 사각형은 컨테이너에서 계산되고 전달되므로 개체가 적중 위치를 의미 있는 해석할 수 있습니다.

[in] pRectLoc

개체의 왼쪽 위 모서리를 기준으로 HIMETRIC 단위로 지정된 적중 테스트 사각형입니다.

[in] lCloseHint

컨테이너가 닫힌 것으로 간주하는 제안된 거리( HIMETRIC 단위)입니다. 이 값은 힌트이며 개체는 고유한 방식으로 해석할 수 있습니다. 개체는 이 힌트를 사용하여 출력 해상도를 대략적으로 유추하여 적중 테스트 구현의 광대도를 선택할 수도 있습니다.

[out] pHitResult

HITRESULT 열거형 값으로 표현된 적중에 대한 반환된 정보에 대한 포인터입니다.

반환 값

이 메서드는 성공에 대한 S_OK 반환합니다. 다른 가능한 반환 값은 다음과 같습니다.

반환 코드 설명
E_FAIL
이 메서드는 요청된 측면에 대해 구현되지 않습니다. 대신 DVASPECT_CONTENT 사용합니다.

설명

컨테이너는 개체가 다른 개체의 지정된 그리기 측면과 겹치는지 여부를 테스트해야 할 수 있습니다. 영역 또는 해당 측면의 경계 사각형을 요청하여 개체가 겹치는지 여부를 확인할 수 있습니다. 그러나 이 작업을 수행하는 더 빠른 방법은 IViewObjectEx::QueryHitRect 를 호출하여 지정된 사각형이 그리기 측면 중 하나와 교차하는지 여부를 개체에 묻는 것입니다.

참고IViewObjectEx::QueryHitPoint와 달리 이 메서드는 HITRESULT_TRANSPARENT 또는 HITRESULT_CLOSE 반환하지 않습니다. 직사각형에 점이 없으면 HITRESULT_OUTSIDE 반환하고 직사각형에서 하나 이상의 점이 적중되면 HITRESULT_HIT.
 

구현자에 대한 참고 사항

IViewObjectEx를 지원하는 개체는 적어도 DVASPECT_CONTENT 측면에 대해 이 메서드를 구현해야 합니다. 개체는 정보를 반환하는 것 외에 이 메서드에 대한 응답으로 다른 작업을 수행해서는 안 됩니다. 부작용이 없어야 합니다. 점이 적중인지 여부에 대한 모호성이 있는 경우 좌표가 정확하게 변환되지 않아 instance 경우 사각형의 모든 지점이 개체에 적중될 때마다 개체가 HITRESULT_HIT 반환해야 합니다. 즉, 실제로 렌더링되지 않은 지점에 대한 적중을 클레임할 수 있지만 개체의 렌더링된 이미지에 있는 모든 지점에 대해 누락을 주장하는 것은 결코 올바르지 않습니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 2000 Professional[데스크톱 앱만]
지원되는 최소 서버 Windows 2000 Server[데스크톱 앱만]
대상 플랫폼 Windows
헤더 ocidl.h

추가 정보

HITRESULT

IViewObjectEx