ich habe mir eine Anwendung gemacht, die nur als Tray Icon existiert. Nun soll dieses Tray Icon aber animiert sein (animiertes GIF). Direkt einbinden als Ressource kann ich aber nur Bitmaps und normale Icons (.ico). Wie kann ich ein animiertes GIF dafür verwenden?
Wenn dein Gif immer das selbe ist und du nicht sehr viele Sub-Bilder im Gif hast, dann könntest du doch die Einzelbilder des Gifs einzeln abspeichern und dann per Timer die Bilder durchlaufen lassen. Ich habe da mal eine Klasse gesehen, auf http://www.codeguru.com, die solche Aufgaben gleich abnimmt - Geschmackssache eben!
Wenn dein Gif variabel ist, dann versuch doch das Gif-Format aufzulösen und die Pixel, des (zeitabhängigen) betreffenden Einzelbildes selber in ein temporäres „Bitmap“ zu schreiben (cachen) und dieses dann zu zuweisen. Um Infos über Dateiformate zu bekommen schau umbedingt mal auf http://www.wotsit.org . Die besagte Klasse bei Codeguru verwendet übrigens ICON bzw. HICON Variablen.
Für Infos über das Erstellen von Icons (vom Quellcode aus) kann ich nur auf die MSDN herweisen: Icons.c (einfach nach HICON suchen) Die Funktion ReadIconFromICOFile muss ja auch ein HICON erzeugen! Der Datentyp ICONRESOURCE (Icons.h) wird dir dabei sicherlich einmal unterkommen, denn dort werden die Bilddaten gespeichert! Weiter kann ich dir dabei leider auch nicht helfen, da ich dieses Aufgabe noch nie hatte.
Ich hoffe, ich konnte helfen,
KoRn!
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]