Freigeben über


CBaseWindow.SetPalette-Methode (Winutil.h)

[Das dieser Seite zugeordnete Feature DirectShow ist ein Legacyfeature. Es wurde durch MediaPlayer, IMFMediaEngine und Audio/Video Capture in Media Foundation ersetzt. Diese Features wurden für Windows 10 und Windows 11 optimiert. Microsoft empfiehlt dringend, dass neuer Code nach Möglichkeit MediaPlayer, IMFMediaEngine und Audio/Video Capture in Media Foundation anstelle von DirectShow verwendet. Microsoft schlägt vor, vorhandenen Code, der die Legacy-APIs verwendet, um nach Möglichkeit die neuen APIs zu verwenden.]

Die SetPalette -Methode installiert eine Palette für das Fenster.

Syntax

virtual HRESULT SetPalette(
   HPALETTE hPalette
);

Parameter

hPalette

Handle mit der neuen Palette. Kann nicht NULL sein.

Rückgabewert

Gibt einen der in der folgenden Tabelle dargestellten HRESULT-Werte zurück.

Rückgabecode Beschreibung
S_FALSE
Ein interner Aufruf von GdiFlush hat einen Fehler zurückgegeben.
S_OK
Erfolg.

Bemerkungen

Wenn der Wert der CBaseWindow:: m_bNoRealize-Membervariable FALSE (Standard) ist, wählt diese Methode die Palette aus und erkennt sie. Andernfalls wird die Palette ausgewählt, aber nicht erkannt. Das -Objekt löscht keine vorherige Palette, die es verwendet hat. Der Aufrufer ist für das Löschen von Paletten verantwortlich.

Jeder Thread kann diese Methode sicher aufrufen, nicht nur der Thread, der das Fenster besitzt. Das Fenster sendet eine private Nachricht an sich selbst, die einen Aufruf der CBaseWindow::OnPaletteChange-Methode auslöst.

Anforderungen

Anforderung Wert
Header
Winutil.h (streams.h einschließen)
Bibliothek
Strmbase.lib (Einzelhandelsbuilds);
Strmbasd.lib (Debugbuilds)

Siehe auch

CBaseWindow-Klasse