共用方式為


IDXGISwapChain1::SetBackgroundColor 方法 (dxgi1_2.h)

變更交換鏈結的背景色彩。

語法

HRESULT SetBackgroundColor(
  [in] const DXGI_RGBA *pColor
);

參數

[in] pColor

DXGI_RGBA結構的指標,指定要設定的背景色彩。

傳回值

SetBackgroundColor 會傳回:

  • 如果成功設定背景色彩,S_OK。
  • E_INVALIDARG如果pColor參數不正確,例如pColor是 Null,或是 pColor 點DXGI_RGBA超出 0.0 到 1.0 範圍之pColor點之成員的任何浮點值。
  • 可能是 DXGI_ERROR 主題中所述的其他錯誤碼。

Windows 7 的平臺更新: 在已安裝 Windows 7 平臺更新 的 Windows 7 或 Windows Server 2008 R2 上, SetBackgroundColor 會失敗並E_NOTIMPL。 如需 Windows 7 平臺更新的詳細資訊,請參閱 適用于 Windows 7 的平臺更新

備註

背景色彩只會影響您在視窗模式中使用 DXGI_SCALING_NONE 建立的交換鏈結。 您會在呼叫IDXGIFactory2::CreateSwapChainForHwndIDXGIFactory2::CreateSwapChainForCoreWindow 或 IDXGIFactory2::CreateSwapChainForComposition中傳遞此值。 一般而言,除非交換鏈結內容小於目的地視窗,否則不會顯示背景色彩。

當您設定背景色彩時,它不會立即實現。 它會與對 IDXGISwapChain1::P resent1 方法的 下一個呼叫一起生效。 您傳遞至IDXGISwapChain1::P resent1DXGI_PRESENT旗標可協助您達到所需的效果。 例如,如果您呼叫 SetBackgroundColor ,然後呼叫 IDXGISwapChain1::P resent1並將 Flags 參數設定為 DXGI_PRESENT_DO_NOT_SEQUENCE,則只會變更背景色彩,而不變更交換鏈結的顯示內容。

當您呼叫IDXGISwapChain1::P resent1方法來顯示交換鏈結的內容時,IDXGISwapChain1::P resent1會使用在 DXGI_SWAP_CHAIN_DESC1結構的AlphaMode成員中指定的DXGI_ALPHA_MODE值,以判斷如何處理DXGI_RGBA結構的成員、背景色彩的 Alpha 值、 可達到視窗透明度。 例如,如果AlphaModeDXGI_ALPHA_MODE_IGNORE,IDXGISwapChain1::P resent1會忽略DXGI_RGBA的成員。

注意 如同所有呈現資料,建議您線上性色彩空間中執行浮點運算。 當桌面處於固定位色彩深度模式時,作業系統會將線性色彩資料轉換成標準 RGB 資料, (sRGB、gamma 2.2 更正的空間) 以撰寫到畫面。 如需詳細資訊,請參閱 轉換色彩空間的資料
 

需求

   
最低支援的用戶端 適用于 Windows 7 的 Windows 8 和平臺更新 [傳統型應用程式 |UWP 應用程式]
最低支援的伺服器 適用于 Windows Server 2008 R2 的 Windows Server 2012 和平臺更新 [傳統型應用程式 |UWP 應用程式]
目標平台 Windows
標頭 dxgi1_2.h
程式庫 Dxgi.lib

另請參閱

DXGI_SCALING

IDXGISwapChain1

IDXGISwapChain1::GetBackgroundColor