WNDOBJ-Struktur (winddi.h)
Mit der WNDOBJ-Struktur kann der Treiber die Änderungen an der Position, Größe und sichtbaren Clientregion eines Fensters nachverfolgen.
Syntax
typedef struct _WNDOBJ {
CLIPOBJ coClient;
PVOID pvConsumer;
RECTL rclClient;
SURFOBJ *psoOwner;
} WNDOBJ, *PWNDOBJ;
Member
coClient
Gibt eine CLIPOBJ-Struktur an, die den Clientbereich des Fensters beschreibt. Wenn iDComplexity DC_RECT ist und der linke Rand in rclBounds größer oder gleich dem rechten Rand ist oder der obere Rand größer oder gleich dem unteren Rand ist, ist der Clientbereich unsichtbar.
pvConsumer
Zeiger auf einen vom Treiber definierten Wert, der diese bestimmte WNDOBJ-Struktur identifiziert. Dieser Wert kann durch Aufrufen der WNDOBJ_vSetConsumer-Funktion festgelegt werden.
rclClient
Gibt eine RECTL-Struktur an, die den Clientbereich des Fensters in Bildschirmkoordinaten beschreibt. Dieses Rechteck ist exklusiv unten rechts, was bedeutet, dass die unteren und rechten Ränder dieser Region nicht enthalten sind.
psoOwner
Zeiger auf die SURFOBJ-Struktur , die beim Erstellen dieses WNDOBJ an EngCreateWnd übergeben wurde.
Hinweise
Die sichtbare Clientregion kann durch Aufrufen der Funktionen WNDOBJ_cEnumStart und WNDOBJ_bEnum aufgelistet werden.
Ein Treiber kann seine eigenen Daten einem WNDOBJ zuordnen, indem er die WNDOBJ_vSetConsumer-Funktion aufruft.
Als Accelerator kann der Treiber auf öffentliche Mitglieder des WNDOBJ zugreifen. Diese öffentlichen Member bleiben garantiert nur im Kontext der Treiberrückrufroutine, die GDI in der EngCreateWnd-Funktion bereitgestellt wird, oder der Funktionen, in denen ein WNDOBJ angegeben wird, unverändert.
Der Treiber sollte den SURFOBJ verwenden, auf den psoOwner verweist, um den treiberspezifischen Zustand abzurufen, der für den WNDOBJ relevant ist, z. B. den PDEV-Handle des Treibers, anstatt globale Variablen beizubehalten.
Anforderungen
Anforderung | Wert |
---|---|
Header | winddi.h (einschließlich Winddi.h) |
Weitere Informationen
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für