Contextos de dispositivo de visualización primarios

Un contexto de dispositivo primario permite a una aplicación minimizar el tiempo necesario para configurar la región de recorte de una ventana. Normalmente, una aplicación usa contextos de dispositivo primarios para acelerar el dibujo de ventanas de control sin necesidad de un contexto de dispositivo privado o de clase. Por ejemplo, el sistema usa contextos de dispositivo primarios para el botón de inserción y los controles de edición. Los contextos de dispositivo primarios están diseñados para su uso solo con ventanas secundarias, nunca con ventanas de nivel superior o emergentes.

Una aplicación puede especificar el estilo de CS_PARENTDC para establecer la región de recorte de la ventana secundaria en la de la ventana primaria para que el elemento secundario pueda dibujar en el elemento primario. Especificar CS_PARENTDC mejora el rendimiento de una aplicación porque el sistema no necesita actualizar la región visible para cada ventana secundaria.

Los valores de atributo establecidos por la ventana primaria no se conservan para la ventana secundaria; por ejemplo, la ventana primaria no puede establecer el pincel para sus ventanas secundarias. La única propiedad conservada es la región de recorte. La ventana debe recortar su propia salida a los límites de la ventana. Dado que la región de recorte del contexto del dispositivo primario es idéntica a la ventana primaria, la ventana secundaria puede dibujar en toda la ventana primaria, pero el contexto del dispositivo primario no se debe usar de esta manera.

El sistema omite el estilo de CS_PARENTDC si la ventana primaria usa un contexto de dispositivo privado o de clase, si la ventana primaria recorta sus ventanas secundarias o si la ventana secundaria recorta sus ventanas secundarias o ventanas del mismo nivel.