Partager via


Contextes d’appareil d’affichage de fenêtre

Un contexte d’appareil de fenêtre permet à une application de dessiner n’importe où dans une fenêtre, y compris la zone non cliente. Les contextes d’appareil de fenêtre sont généralement utilisés par les applications qui traitent les messages WM_NCPAINT et WM_NCACTIVATE pour windows avec des zones non clientes personnalisées. L’utilisation d’un contexte d’appareil de fenêtre n’est pas recommandée à d’autres fins.

Une application peut récupérer un contexte d’appareil de fenêtre à l’aide de la fonction GetWindowDC ou Fonction GetDCEx avec l’option DCX_WINDOW spécifiée. La fonction récupère un contexte d’appareil de fenêtre à partir du cache de contexte d’appareil d’affichage. Une fenêtre qui utilise un contexte d’appareil de fenêtre doit la libérer après le dessin à l’aide de la fonction ReleaseDC dès que possible. Les contextes d’appareil de fenêtre proviennent toujours du cache ; les styles de classe CS_OWNDC et CS_CLASSDC n’affectent pas le contexte de l’appareil.

Lorsqu’une application récupère un contexte d’appareil de fenêtre, le système définit l’origine de l’appareil en haut à gauche de la fenêtre au lieu du coin supérieur gauche de la zone cliente. Il définit également la région de découpage pour inclure l’intégralité de la fenêtre, pas seulement la zone cliente. Le système définit les valeurs d’attribut actuelles d’un contexte d’appareil de fenêtre sur les mêmes valeurs par défaut qu’un contexte d’appareil commun. Une application peut modifier les valeurs d’attribut, mais le système ne conserve aucune modification lorsque le contexte de l’appareil est libéré.