다음을 통해 공유


DwmExtendFrameIntoClientArea 함수(dwmapi.h)

창 프레임을 클라이언트 영역으로 확장합니다.

구문

HRESULT DwmExtendFrameIntoClientArea(
  [in] HWND          hWnd,
  [in] const MARGINS *pMarInset
);

매개 변수

[in] hWnd

프레임이 클라이언트 영역으로 확장될 창에 대한 핸들입니다.

[in] pMarInset

프레임을 클라이언트 영역으로 확장할 때 사용할 여백을 설명하는 MARGINS 구조체에 대한 포인터입니다.

반환 값

이 함수가 성공하면 S_OK 반환합니다. 그러지 않으면 HRESULT 오류 코드를 반환합니다.

설명

DWM(데스크톱 창 관리자) 컴퍼지션이 전환될 때마다 이 함수를 호출해야 합니다. 컴퍼지션 변경 알림에 대한 WM_DWMCOMPOSITIONCHANGED 메시지를 처리합니다.

음수 여백 값을 사용하여 클라이언트 영역이 창 테두리가 없는 단색 표면으로 렌더링되는 "유리 시트" 효과를 만듭니다.

예제

다음 샘플에서는 아래쪽 여백을 확장하여 큰 아래쪽 프레임을 만드는 방법을 보여 줍니다.


HRESULT ExtendIntoClientBottom(HWND hwnd)
{
   // Set margins, extending the bottom margin
   MARGINS margins = {0,0,0,25};
   HRESULT hr = S_OK;

   // Extend frame on the bottom of client area
   hr = DwmExtendFrameIntoClientArea(hwnd,&margins);
   if (SUCCEEDED(hr))
   {
      // ...
   }
   return hr;
}

다음 샘플에서는 클라이언트 영역이 창 테두리 없이 렌더링되는 "유리 시트" 효과를 보여 줍니다.


HRESULT ExtendIntoClientAll(HWND hwnd)
{
   // Negative margins have special meaning to DwmExtendFrameIntoClientArea.
   // Negative margins create the "sheet of glass" effect, where the client area
   // is rendered as a solid surface with no window border.
   MARGINS margins = {-1};
   HRESULT hr = S_OK;

   // Extend the frame across the entire window.
   hr = DwmExtendFrameIntoClientArea(hwnd,&margins);
   if (SUCCEEDED(hr))
   {
      // ...
   }
   return hr;
}

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows Vista [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2008 [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 dwmapi.h
라이브러리 Dwmapi.lib
DLL Dwmapi.dll

추가 정보

DWM 흐림 뒤에 개요