Compartir a través de


Función EngControlSprites (winddi.h)

La función EngControlSprites desglosa o vuelve a dibujar sprites en el área WNDOBJ especificada.

Sintaxis

ENGAPI BOOL EngControlSprites(
  WNDOBJ *pwo,
  FLONG  fl
);

Parámetros

pwo

Puntero a la estructura WNDOBJ en la que se compilan o desgarran los sprites.

fl

Este parámetro puede establecerse con uno de los siguientes valores:

ECS_TEARDOWN

Solicita que GDI desmonte y quite el efecto de sprite de cualquier sprite que se superponga al área WNDOBJ. En otras palabras, GDI vuelve a dibujar el sprite con un efecto neutralizado para que el sprite no esté visible en la pantalla. GDI restaura el área debajo del sprite realizando llamadas inmediatas a DrvCopyBits.

ECS_REDRAW

Solicita que GDI vuelva a dibujar, restaurando los sprites que superpongan el área WNDOBJ. GDI vuelve a dibujar directamente en la pantalla realizando llamadas a DrvCopyBits.

Valor devuelto

EngControlSprites devuelve TRUE al completar correctamente la operación solicitada; de lo contrario, devuelve FALSE.

Comentarios

La invocación de ECS_TEARDOWN puede ser persistente. Por ejemplo, el controlador puede llamar a EngControlSprites una vez con ECS_TEARDOWN tan pronto como haya creado el WNDOBJ, y nunca se dibujarán sprites en la parte superior de la ventana.

El controlador puede llamar a EngControlSprites con ECS_REDRAW muchas veces sin realizar llamadas intermedias con ECS_TEARDOWN para forzar el reintentos de una sprite en cualquier momento.

ECS_TEARDOWN siempre fuerza un nuevo dibujo inmediato de cualquier sprite sobre el área WNDOBJ. GDI guarda los bits debajo de los sprites llamando a DrvCopyBits para copiarlos desde la pantalla y, a continuación, compone los sprites en la pantalla llamando a DrvCopyBits. Esto se puede usar para permitir que las sprites se comscriban en un búfer de reserva justo antes de que se envíe un comando swap-buffer al hardware (a través de DrvSwapBuffers o cualquier otro mecanismo de búfer de intercambio de controladores). Esto permite la composición sin problemas de sprites, sin parpadear, cuando la ventana es de doble almacenamiento en búfer.

ECS_TEARDOWN nunca hará que se envíe un mensaje WOC_SPRITE_NO_OVERLAP y, del mismo modo, ECS_REDRAW nunca hará que se envíe un mensaje de WOC_SPRITE_OVERLAP.

Se puede llamar a EngControlSprites incluso si actualmente no hay sprites que superpongan el área WNDOBJ.

Requisitos

Requisito Value
Cliente mínimo compatible Disponible en Windows 2000 y versiones posteriores de los sistemas operativos Windows.
Plataforma de destino Universal
Encabezado winddi.h (incluya Winddi.h)
Library Win32k.lib
Archivo DLL Win32k.sys

Consulte también

EngCreateWnd

WNDOBJ