IDCompositionDesktopDevice::CreateTargetForHwnd-Methode (dcomp.h)
Erstellt ein Kompositionszielobjekt, das an das Fenster gebunden ist, das durch das angegebene Fensterhandle dargestellt wird.
Syntax
HRESULT CreateTargetForHwnd(
[in] HWND hwnd,
BOOL topmost,
[out] IDCompositionTarget **target
);
Parameter
[in] hwnd
Das Fenster, an das das Kompositionszielobjekt gebunden werden soll. Dieser Parameter darf nicht NULL sein.
topmost
TRUE, wenn die visuelle Struktur über den untergeordneten Elementen des durch den hwnd-Parameter angegebenen Fensters angezeigt werden soll; Andernfalls wird die visuelle Struktur hinter den untergeordneten Elementen angezeigt.
[out] target
Das neue Kompositionszielobjekt. Dieser Parameter darf nicht NULL sein.
Rückgabewert
Wenn die Funktion erfolgreich ist, gibt sie S_OK zurück. Andernfalls wird ein Fehlercode HRESULT zurückgegeben. Eine Liste der Fehlercodes finden Sie unter DirectComposition-Fehlercodes .
Hinweise
Eine visuelle DirectComposition-Struktur muss an ein Fenster gebunden sein, bevor etwas auf dem Bildschirm angezeigt werden kann. Das Fenster kann ein Fenster auf oberster Ebene oder ein untergeordnetes Fenster sein. In beiden Fällen kann das Fenster ein mehrschichtiges Fenster sein, aber in allen Fällen muss das Fenster zum aufrufenden Prozess gehören. Wenn das Fenster zu einem anderen Prozess gehört, gibt diese Methode DCOMPOSITION_ERROR_ACCESS_DENIED zurück.
Wenn DirectComposition-Inhalte für das Fenster zusammengestellt werden, wird der Inhalt immer über dem zusammengesetzt, was direkt in dieses Fenster über den Gerätekontext gezeichnet wird, der von der GetDC-Funktion zurückgegeben wird, oder durch Aufrufe von DirectX Present-Methoden. Da Jedoch Fensterausschnittsregeln für DirectComposition-Inhalte gelten, können diese untergeordneten Fenster die visuelle Struktur abschneiden, wenn das Fenster über untergeordnete Fenster verfügt. Der oberste Parameter bestimmt, ob untergeordnete Fenster die visuelle Struktur ausschneiden.
Konzeptionell besteht jedes Fenster aus vier Ebenen:
- Der Inhalt, der direkt in das Fensterhandle gezeichnet wird (dies ist die unterste Ebene).
- Eine optionale visuelle DirectComposition-Struktur.
- Der Inhalt aller untergeordneten Fenster, falls vorhanden.
- Eine weitere optionale visuelle DirectComposition-Struktur (dies ist die oberste Ebene).
Höchstens können für jedes Fenster im System nur zwei Kompositionsziele erstellt werden, eins ganz oben und eins nicht ganz oben. Wenn ein Kompositionsziel bereits an das angegebene Fenster auf der angegebenen Ebene gebunden ist, schlägt diese Methode fehl. Wenn ein Kompositionszielobjekt zerstört wird, steht die zusammengestellte Ebene für die Verwendung durch ein neues Kompositionszielobjekt zur Verfügung.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform | Windows |
Kopfzeile | dcomp.h |