Kontexte des übergeordneten Anzeigegeräts
Ein übergeordneter Gerätekontext ermöglicht es einer Anwendung, die zum Einrichten des Clippingbereichs für ein Fenster erforderliche Zeit zu minimieren. Eine Anwendung verwendet in der Regel übergeordnete Gerätekontexte, um die Zeichnung für Steuerfenster zu beschleunigen, ohne dass ein privater oder klassenbezogener Gerätekontext erforderlich ist. Das System verwendet z. B. übergeordnete Gerätekontexte für Knopfdruck- und Bearbeitungssteuerelemente. Übergeordnete Gerätekontexte sind nur für untergeordnete Fenster vorgesehen, niemals mit Fenstern der obersten Ebene oder Popupfenstern.
Eine Anwendung kann die CS_PARENTDC Formatvorlage angeben, um den Beschneidungsbereich des untergeordneten Fensters auf die des übergeordneten Fensters festzulegen, sodass das untergeordnete Element im übergeordneten Fenster zeichnen kann. Das Angeben von CS_PARENTDC verbessert die Leistung einer Anwendung, da das System den sichtbaren Bereich für jedes untergeordnete Fenster nicht neu berechnen muss.
Vom übergeordneten Fenster festgelegte Attributwerte werden für das untergeordnete Fenster nicht beibehalten; Beispielsweise kann das übergeordnete Fenster den Pinsel für die untergeordneten Fenster nicht festlegen. Die einzige beibehaltene Eigenschaft ist der Beschneidungsbereich. Das Fenster muss eine eigene Ausgabe an die Begrenzungen des Fensters ausschneiden. Da der Clippingbereich für den Kontext des übergeordneten Geräts mit dem übergeordneten Fenster identisch ist, kann das untergeordnete Fenster potenziell über das gesamte übergeordnete Fenster zeichnen, der kontext des übergeordneten Geräts darf jedoch nicht auf diese Weise verwendet werden.
Das System ignoriert die CS_PARENTDC Formatvorlage, wenn das übergeordnete Fenster einen privaten oder Klassengerätekontext verwendet, wenn das übergeordnete Fenster seine untergeordneten Fenster ausklammert oder wenn das untergeordnete Fenster seine untergeordneten Fenster oder gleichgeordneten Fenster ausklammert.