Share via


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

CLIPOBJ

EngCreateWnd

SURFOBJ

WNDOBJCHANGEPROC

WNDOBJ_bEnum

WNDOBJ_cEnumStart

WNDOBJ_vSetConsumer