Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
[Das dieser Seite zugeordnete Feature DrawDib ist ein Legacyfeature. Sie wurde durch die MediaComposition-Klasse abgelöst. Die MediaComposition-Klasse wurde für Windows 10 und Windows 11 optimiert. Microsoft empfiehlt dringend, dass neuer Code nach Möglichkeit die MediaComposition-Klasse anstelle von DrawDib verwendet. Microsoft schlägt vor, dass vorhandener Code, der die Legacy-APIs verwendet, so umgeschrieben wird, dass nach Möglichkeit die neuen APIs verwendet werden.]
Im folgenden Beispiel werden einfache Nachrichtenhandler für die WM_PALETTECHANGED - und WM_QUERYNEWPALETTE-Nachrichten veranschaulicht. Im Beispiel wird die DrawDibRealize-Funktion verwendet, um die WM_QUERYNEWPALETTE Nachricht zu verarbeiten.
Ihre Anwendung sollte auf die WM_QUERYNEWPALETTE-Nachricht reagieren, indem sie das Zielfenster ungültig macht, damit die DrawDibDraw-Funktion ein Bild neu zeichnen kann. Sie sollten auf die WM_PALETTECHANGED Nachricht reagieren, indem Sie die DrawDibRealize-Funktion verwenden, um die Palette zu realisieren.
case WM_PALETTECHANGED:
if ((HWND)wParam == hwnd)
break;
case WM_QUERYNEWPALETTE:
hdc = GetDC(hwnd);
f = DrawDibRealize(hdd, hdc, FALSE) > 0;
ReleaseDC(hwnd, hdc);
if (f)
InvalidateRect(hwnd, NULL, TRUE);
break;
Zugehörige Themen