CBaseWindow.SetPalette 方法 (Winutil.h)
[與此頁面相關的功能 DirectShow是舊版功能。 它已被 MediaPlayer、 IMFMediaEngine和 Media Foundation 中的音訊/視訊擷取取代。 這些功能已針對Windows 10和Windows 11進行優化。 Microsoft 強烈建議新程式碼盡可能使用 MediaPlayer、 IMFMediaEngine 和 音訊/視訊擷取 ,而不是 DirectShow。 Microsoft 建議使用舊版 API 的現有程式碼盡可能重寫為使用新的 API。
方法 SetPalette
會安裝視窗的調色盤。
語法
virtual HRESULT SetPalette(
HPALETTE hPalette
);
參數
-
hPalette
-
新調色盤的控制碼。 不可以是 Null。
傳回值
傳回下表所示的其中一個 HRESULT 值。
傳回碼 | Description |
---|---|
|
GdiFlush的內部呼叫傳回錯誤。 |
|
成功。 |
備註
如果 CBaseWindow::m_bNoRealize 成員變數的值是 FALSE , (預設) ,這個方法會選取調色盤並實現它。 否則,它會選取調色盤,但不了解。 物件不會刪除它正在使用的任何先前調色盤。 呼叫端負責刪除調色盤。
任何執行緒都可以安全地呼叫這個方法,而不只是擁有視窗的執行緒。 視窗會將私人訊息傳送給本身,這會觸發 對 CBaseWindow::OnPaletteChange 方法的呼叫。
規格需求
需求 | 值 |
---|---|
標頭 |
|
程式庫 |
|