Mensaje de WM_DWMSENDICONICTHUMBNAIL
Indica a una ventana que proporciona un mapa de bits estático que se use como una representación en miniatura de esa ventana.
Parámetros
-
wParam
-
No utilizado.
-
lParam
-
El HIWORD de este valor es la coordenada x máxima de la miniatura. El LOWORD es la coordenada Y máxima. Si una miniatura tiene una dimensión que supera uno o ambos valores, DWM no acepta la miniatura.
Valor devuelto
Si la aplicación procesa este mensaje, debe devolver cero.
Comentarios
DWM envía este mensaje a una ventana si se cumplen todas las situaciones siguientes:
- DWM muestra una representación emblemática de la ventana.
- El atributo DWMWA_HAS_ICONIC_BITMAP se establece en la ventana.
- La ventana no estableció un mapa de bits almacenado en caché.
- Hay espacio en la memoria caché para otro mapa de bits.
La ventana que recibe este mensaje debe responder generando un mapa de bits que no sea mayor que el tamaño solicitado en los parámetros del mensaje. A continuación, la ventana llama a la función DwmSetIconicThumbnail para invalidar la miniatura predeterminada. Si la ventana no proporciona un mapa de bits en un período determinado de tiempo, DWM usa su propia representación emblemática predeterminada para la ventana.
La ventana debe pertenecer al proceso de llamada.
Ejemplos
En el ejemplo de código siguiente se muestra cómo responder al mensaje WM_DWMSENDICONICTHUMBNAIL. En el ejemplo se llama a DwmSetIconicThumbnail, con un identificador para un mapa de bits personalizado independiente del dispositivo para usarlo como representación de las ventanas.
case WM_DWMSENDICONICTHUMBNAIL:
{
// This window is being asked to provide its iconic bitmap. This indicates
// a thumbnail is being drawn.
hbm = CreateDIB(HIWORD(lParam), LOWORD(lParam));
if (hbm)
{
hr = DwmSetIconicThumbnail(hwnd, hbm, 0);
DeleteObject(hbm);
}
}
break;
Para obtener el ejemplo completo, consulte el ejemplo Personalizar una miniatura icónica y un mapa de bits de vista previa activa.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo compatible |
Windows 7 [solo aplicaciones de escritorio] |
Servidor mínimo compatible |
Windows Server 2008 R2 [solo aplicaciones de escritorio] |
Encabezado |
|