Freigeben über


IDCompositionVisual::SetTransform(IDCompositionTransform*)-Methode (dcomp.h)

Legt die Transform-Eigenschaft dieses Visuals auf das angegebene 2D-Transformationsobjekt fest.

Syntax

HRESULT SetTransform(
  [in, optional] IDCompositionTransform *transform
);

Parameter

[in, optional] transform

Typ: IDCompositionTransform*

Das Transformationsobjekt, das zum Ändern des Koordinatensystems dieses Visuals verwendet wird. Dieser Parameter kann auf eine IDCompositionTransform-Schnittstelle oder eine ihrer abgeleiteten Schnittstellen verweisen. Dieser Parameter kann NULL sein.

Rückgabewert

Typ: HRESULT

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

Durch Festlegen der Transform-Eigenschaft wird das Koordinatensystem der gesamten visuellen Unterstruktur transformiert, die in diesem Visual verwurzelt ist. Wenn die Clip-Eigenschaft dieses Visuals angegeben wird, wird auch das Cliprechteck transformiert.

Wenn die Transform-Eigenschaft zuvor eine Transformationsmatrix angegeben hat, ersetzt das neu angegebene Transformationsobjekt die Transformationsmatrix.

Eine von der Transform-Eigenschaft angegebene Transformation wird nach den Eigenschaften OffsetX und OffsetY angewendet. Anders ausgedrückt: Das Festlegen der Transform-Eigenschaft und der OffsetX- und OffsetY-Eigenschaft ist identisch mit dem Festlegen der Transform-Eigenschaft für eine Transformationsgruppe, bei der das erste Mitglied der Gruppe ein IDCompositionTranslateTransform-Objekt ist, das dieselben OffsetX- und OffsetY-Werte aufweist. Sie sollten jedoch nach Möglichkeit die Methoden IDCompositionVisual::SetOffsetX und SetOffsetY verwenden, da sie etwas schneller sind.

Diese Methode schlägt fehl, wenn die Transformation ein ungültiger Zeiger ist oder nicht von derselben IDCompositionDevice-Schnittstelle erstellt wurde, die dieses Visual erstellt hat. Die Schnittstelle darf keine benutzerdefinierte Implementierung sein. Mit dieser Methode können nur schnittstellen verwendet werden, die von Microsoft DirectComposition erstellt wurden.

Wenn der Transformationsparameter NULL ist, wird das Koordinatensystem dieses Visuals nur durch die Eigenschaften OffsetX und OffsetY transformiert. Das Festlegen der Transform-Eigenschaft auf NULL entspricht dem Festlegen auf ein IDCompositionMatrixTransform-Objekt , bei dem die angegebene Matrix die Identitätsmatrix ist. Eine Anwendung sollte die Transform-Eigenschaft jedoch nach Möglichkeit auf NULL festlegen, da sie etwas schneller ist.

Wenn die Eigenschaften OffsetX und OffsetY auf 0 festgelegt sind und die Transform-Eigenschaft auf NULL festgelegt ist, ist das Koordinatensystem des Visuals mit dem des übergeordneten Elements identisch.

Anforderungen

   
Unterstützte Mindestversion (Client) Windows 8 [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2012 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile dcomp.h
Bibliothek Dcomp.lib
DLL Dcomp.dll

Weitere Informationen

IDCompositionMatrixTransform

IDCompositionRotateTransform

IDCompositionScaleTransform

IDCompositionSkewTransform

IDCompositionTransform

IDCompositionTranslateTransform

IDCompositionVisual

IDCompositionVisual::SetOffsetX

IDCompositionVisual::SetOffsetY