Animation d’une palette
[La fonctionnalité associée à cette page, DrawDib, est une fonctionnalité héritée. Elle a été remplacée par la classe MediaComposition. La classe MediaComposition a été optimisée pour Windows 10 et Windows 11. Microsoft recommande vivement que le nouveau code utilise la classe MediaComposition au lieu de DrawDib, lorsque cela est possible. Microsoft suggère que le code existant qui utilise les API héritées soit réécrit pour utiliser les nouvelles API si possible.]
L’exemple suivant anime une palette à l’aide des fonctions DrawDibRealize, DrawDibChangePalette et DrawDibDraw .
Vous pouvez modifier les couleurs d’une bitmap à l’aide de la fonction DrawDibBegin en combinaison avec DrawDibChangePalette. Tout d’abord, pour autoriser les modifications de palette, spécifiez l’indicateur DDF_ANIMATE dans l’appel à DrawDibBegin. Ensuite, définissez les valeurs de table de couleurs des entrées de palette à l’aide de DrawDibChangePalette.
Par exemple, si lppe est une adresse du tableau PALETTEENTRY contenant les nouvelles couleurs, et lpbi est la structure BITMAPINFOHEADER utilisée dans DrawDibBegin ou DrawDibDraw, le fragment suivant met à jour la table de couleurs DIB.
hdc = GetDC(hwnd);
DrawDibBegin(hdd, ....., DDF_ANIMATE);
DrawDibRealize(hdd, hdc, fBackground);
DrawDibDraw(hdd, hdc, ...., DDF_SAME_DRAW|DDF_SAME_HDC);
// Call to change color.
DrawDibChangePalette(hDD, iStart, iLen, lppe);
.
.
.
ReleaseDC(hwnd, hdc);
Rubriques connexes
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour