Share via


IDCompositionVisual::SetClip (IDCompositionClip*) 方法 (dcomp.h)

將這個視覺效果的 Clip 屬性設定為指定的剪輯物件。 Clip 屬性會將此視覺效果根目錄的視覺子樹轉譯限制為矩形區域。

語法

HRESULT SetClip(
  [in, optional] IDCompositionClip *clip
);

參數

[in, optional] clip

類型: IDCompositionClip*

要與此視覺效果產生關聯的剪輯物件。 此參數可以是 Null。 IDCompositionRectangleClip 的所有 float 屬性都有 -2^21 到 2^21 的數值限制。 API 會接受此範圍以外的數位,但它們一律會固定在此範圍中。

傳回值

類型: HRESULT

如果函式成功,則會傳回S_OK。 否則,它會傳回 HRESULT 錯誤碼。 如需錯誤碼清單,請參閱 DirectComposition 錯誤碼

備註

設定 Clip 屬性會裁剪此視覺效果,以及在這個視覺效果上根目錄的子樹狀結構中的所有視覺效果。 剪輯會由 OffsetX、OffsetY 和 Transform 屬性轉換。

如果 Clip 屬性先前指定了剪輯矩形,則新指定的 Clip 物件會取代裁剪矩形。

如果 clip 是不正確指標,或不是由建立此視覺效果的相同 IDCompositionDevice 介面所建立,這個方法就會失敗。 介面不能是自訂實作;只有由 Microsoft DirectComposition 建立的介面可以搭配這個方法使用。

如果 clip 為 Null,則視覺效果不會相對於其父系裁剪。 不過,視覺效果是由父視覺效果的 clip 物件或具有 clip 物件的最接近上階視覺效果裁剪。 將 剪輯 設定為 Null 類似于指定剪輯物件,其剪輯矩形的左邊和頂端設定為負無限大,而右側和下側設定為正無限大。 使用 Null 剪輯物件會產生稍微更好的效能。

如果 clip 指定具有空白矩形的剪輯物件,則會完全裁剪視覺效果;也就是說,視覺效果會包含在視覺化樹狀結構中,但不會轉譯任何專案。 若要從組合中排除特定視覺效果,請從視覺化樹狀結構中移除視覺效果,而不是設定空的裁剪矩形。 移除視覺效果會產生更佳的效能。

需求

   
最低支援的用戶端 Windows 8 [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2012 [僅限傳統型應用程式]
目標平台 Windows
標頭 dcomp.h
程式庫 Dcomp.lib
Dll Dcomp.dll

另請參閱

裁剪

IDCompositionRectangleClip

IDCompositionVisual