Partager via


WM_DWMSENDICONICLIVEPREVIEWBITMAP message

Indique à une fenêtre de fournir une bitmap statique à utiliser en tant qu’aperçu dynamique (également appelé aperçu) de cette fenêtre.

Paramètres

wParam

Non utilisé.

lParam

Non utilisé.

Valeur retournée

Si une application traite ce message, elle doit retourner zéro.

Notes

Un aperçu dynamique (également appelé aperçu) d’une fenêtre s’affiche lorsqu’un utilisateur déplace le pointeur de la souris sur la miniature de la fenêtre dans la barre des tâches ou donne le focus à la miniature dans la fenêtre ALT+TAB. Cette vue est un aperçu complet de la fenêtre et peut être une instantané en direct ou une représentation emblématique.

Desktop Window Manager (DWM) envoie ce message à une fenêtre si toutes les situations suivantes sont vraies :

  • L’aperçu en direct a été appelé dans la fenêtre.
  • L’attribut DWMWA_HAS_ICONIC_BITMAP est défini dans la fenêtre.
  • Une représentation emblématique est la seule qui existe pour cette fenêtre.

La fenêtre qui reçoit ce message doit répondre en générant une bitmap à grande échelle. La fenêtre appelle ensuite la fonction DwmSetIconicLivePreviewBitmap pour définir l’aperçu en direct. Si la fenêtre ne définit pas de bitmap dans un laps de temps donné, DWM utilise sa propre représentation iconique par défaut pour la fenêtre.

Exemples

L’exemple suivant illustre une réponse au message WM_DWMSENDICONICLIVEPREVIEWBITMAP . L’exemple appelle la fonction DwmSetIconicLivePreviewBitmap avec un handle à une bitmap personnalisée indépendante de l’appareil à utiliser comme représentation de la fenêtre.

        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;

Pour obtenir le code complet, consultez l’exemple Personnaliser une miniature iconique et une bitmap en préversion en direct .

Spécifications

Condition requise Valeur
Client minimal pris en charge
Windows 7 [applications de bureau uniquement]
Serveur minimal pris en charge
Windows Server 2008 R2 [applications de bureau uniquement]
En-tête
Dwmapi.h

Voir aussi

WM_DWMSENDICONICTHUMBNAIL

DwmInvalidateIconicBitmaps