Share via


messaggio di WM_DWMSENDICONICLIVEPREVIEWBITMAP

Indica a una finestra di fornire una bitmap statica da usare come anteprima dinamica (nota anche come anteprima) di tale finestra.

Parametri

wParam

Non usato.

lParam

Non usato.

Valore restituito

Se un'applicazione elabora questo messaggio, deve restituire zero.

Commenti

Quando un utente sposta il puntatore del mouse sull'anteprima della finestra sulla barra delle applicazioni o assegna lo stato attivo all'anteprima della finestra nella finestra ALT+TAB, viene visualizzata un'anteprima in anteprima. Questa visualizzazione è un'anteprima completa della finestra e può essere uno snapshot live o una rappresentazione iconica.

Desktop Window Manager (DWM) invia questo messaggio a una finestra se tutte le situazioni seguenti sono vere:

  • L'anteprima dinamica è stata richiamata nella finestra.
  • L'attributo DWMWA_HAS_ICONIC_BITMAP è impostato nella finestra.
  • Una rappresentazione iconica è l'unica che esiste per questa finestra.

La finestra che riceve questo messaggio deve rispondere generando una bitmap con scalabilità completa. La finestra chiama quindi la funzione DwmSetIconicLivePreviewBitmap per impostare l'anteprima in tempo reale. Se la finestra non imposta una bitmap in un determinato periodo di tempo, DWM usa la propria rappresentazione iconica predefinita per la finestra.

Esempio

Nell'esempio seguente viene illustrata una risposta al messaggio di WM_DWMSENDICONICLIVEPREVIEWBITMAP . L'esempio chiama la funzione DwmSetIconicLivePreviewBitmap con un handle per una bitmap personalizzata indipendente dal dispositivo da usare come rappresentazione della finestra.

        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;

Per il codice completo, vedere l'esempio Customize an Iconic Thumbnail and a Live Preview Bitmap (Personalizzare un'anteprima iconica e un'anteprima dinamica bitmap ).

Requisiti

Requisito Valore
Client minimo supportato
Windows 7 [solo app desktop]
Server minimo supportato
Windows Server 2008 R2 [solo app desktop]
Intestazione
Dwmapi.h

Vedi anche

WM_DWMSENDICONICTHUMBNAIL

DwmInvalidateIconicBitmaps