다음을 통해 공유


IOleInPlaceUIWindow::RequestBorderSpace 메서드(oleidl.h)

개체가 활성 상태인 동안 개체의 창 프레임 주위에 도구를 설치할 수 있는 공간이 있는지 여부를 결정합니다.

구문

HRESULT RequestBorderSpace(
  [in] LPCBORDERWIDTHS pborderwidths
);

매개 변수

[in] pborderwidths

도구의 창 양쪽에 필요한 요청된 너비(픽셀)를 포함하는 BORDERWIDTHS 구조체에 대한 포인터입니다.

반환 값

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

반환 코드 설명
INPLACE_E_NOTOOLSPACE
구현에서 도구 모음을 지원하지 않거나 도구 모음을 설치할 공간이 부족하기 때문에 개체가 이 창 개체에 도구 모음을 설치할 수 없습니다.
E_UNEXPECTED
예기치 않은 오류가 발생했습니다.

설명

발신자에 대한 참고 사항

현재 위치 개체는 IOleInPlaceUIWindow::RequestBorderSpace 를 호출하여 창 프레임 내에 도구를 설치할 수 있는지 묻습니다. 이러한 도구는 IOleInPlaceUIWindow::GetBorder 에서 반환된 사각형과 이 호출에 대한 인수에 지정된 BORDERWIDTHS 구조 간에 할당됩니다.

도구의 공간은 IOleInPlaceUIWindow::SetBorderSpace를 호출할 때까지 개체에 실제로 할당되지 않으므로 개체가 공간(예: 도구 모음을 끌어다 놓는 동안)에 대해 협상할 수 있지만 작업이 완료될 때까지 도구 이동이 지연됩니다.

개체는 각 면에 사용할 너비를 픽셀 단위로 전달하여 이러한 도구를 설치할 수 있습니다. 예를 들어 개체가 위쪽에 10픽셀, 아래쪽에 0픽셀, 왼쪽과 오른쪽에 5픽셀이 필요한 경우 다음 BORDERWIDTHS 구조를 IOleInPlaceUIWindow::RequestBorderSpace에 전달합니다.

lpbw->top    = 10 
lpbw->bottom =  0 
lpbw->lLeft  =  5 
lpbw->right  =  5 
참고IOleInPlaceUIWindow::RequestBorderSpace를 실행하는 동안 PeekMessage 또는 GetMessage 함수 또는 대화 상자를 호출하지 마세요. 이렇게 하면 시스템이 교착 상태에 빠질 수 있습니다. IOleInPlaceUIWindow::RequestBorderSpace 내에서 OLE 인터페이스 메서드 및 함수를 호출할 수 있는 추가 제한 사항이 있습니다.
 

구현자에 대한 참고 사항

현재 개체가 도구 모음에 사용하는 공간의 양이 컨테이너와 관련이 없는 경우 다음 IOleInPlaceUIWindow::RequestBorderSpace 예제와 같이 NOERROR를 반환할 수 있습니다. 컨테이너는 현재 위치 개체에 의해 도구 표시를 과도하게 제한해서는 안 됩니다.
HRESULT InPlaceUIWindow_RequestBorderSpace( 
    IOleInPlaceFrame *  lpThis, 
    LPCBORDERWIDTHS     pborderwidths) 
{ 
    // Container allows the object to have as much border space as it 
    // wants.  
    return NOERROR; 
} 

요구 사항

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

추가 정보

IOleInPlaceUIWindow

IOleInPlaceUIWindow::GetBorder

IOleInPlaceUIWindow::SetBorderSpace