다음을 통해 공유


WM_DWMSENDICONICLIVEPREVIEWBITMAP 메시지

창에 해당 창의 라이브 미리 보기 ( 미리 보기 미리 보기라고도 함)로 사용할 정적 비트맵을 제공하도록 지시합니다.

매개 변수

wParam

사용되지 않습니다.

lParam

사용되지 않습니다.

반환 값

애플리케이션이 이 메시지를 처리하면 0을 반환해야 합니다.

설명

사용자가 작업 표시줄의 창 축소판 그림 위로 마우스 포인터를 이동하거나 ALT+TAB 창에서 축소판 그림 포커스를 제공하면 창의 라이브 미리 보기 ( 미리 보기라고도 함)가 나타납니다. 이 보기는 창의 전체 크기 미리 보기이며 라이브 스냅샷 또는 상징적인 표현일 수 있습니다.

다음 상황이 모두 충족되면 DWM(데스크톱 창 관리자)이 이 메시지를 창으로 보냅니다.

  • 라이브 미리 보기가 창에서 호출되었습니다.
  • DWMWA_HAS_ICONIC_BITMAP 특성이 창에 설정됩니다.
  • 아이콘 표현은 이 창에 존재하는 유일한 표현입니다.

이 메시지를 수신하는 창은 본격적인 비트맵을 생성하여 응답해야 합니다. 그런 다음, 창에서 DwmSetIconicLivePreviewBitmap 함수를 호출하여 라이브 미리 보기를 설정합니다. 창이 지정된 시간 동안 비트맵을 설정하지 않으면 DWM은 창에 고유한 기본 아이콘 표현을 사용합니다.

예제

다음 예제에서는 WM_DWMSENDICONICLIVEPREVIEWBITMAP 메시지에 대한 응답을 보여 줍니다. 이 예제에서는 창의 표현으로 사용할 사용자 지정된 디바이스 독립적 비트맵에 대한 핸들을 사용하여 DwmSetIconicLivePreviewBitmap 함수를 호출합니다.

        case WM_DWMSENDICONICLIVEPREVIEWBITMAP:
        {
            // This window is being asked to provide a bitmap to show in Peek preview.
            // This indicates the thumbnail in the taskbar is being previewed.
            RECT rectWindow = {0, 0, 0, 0};
            if (GetClientRect(hwnd, &rectWindow))
            {
                nWidth = rectWindow.right - rectWindow.left;
                nHeight = rectWindow.bottom - rectWindow.top;
            }

            hbm = CreateDIB(nWidth, nHeight);
            if (hbm)
            {
                hr = DwmSetIconicLivePreviewBitmap(hwnd, hbm, NULL, DWM_SIT_DISPLAYFRAME);
                DeleteObject(hbm);
            }
        }
        break;

전체 코드는 아이콘 썸네일 사용자 지정 및 라이브 미리 보기 비트맵 샘플을 참조하세요.

요구 사항

요구 사항
지원되는 최소 클라이언트
Windows 7 [데스크톱 앱만 해당]
지원되는 최소 서버
Windows Server 2008 R2 [데스크톱 앱만 해당]
헤더
Dwmapi.h

추가 정보

WM_DWMSENDICONICTHUMBNAIL

DwmInvalidateIconicBitmaps