Visual Basic unterstützt zwar seit der Version 5.0 das GIF-Bildformat, doch werden animierte GIF-Grafiken nicht als solche dargestellt, sondern vielmehr immer nur das erste Bild einer animierten GIF-Grafikfolge. Wie Sie dennoch animierte GIFs in Ihren Programmen anzeigen können, ohne auf zusätzliche Freeware/Shareware oder gar kommerzielle Komponenten zurückgreifen zu müssen, zeigt Ihnen der nachfolgende "weihnachtliche" Tipp Alles was Sie brauchen, sind ein Image- und ein WebBrowser-Control. Das Image-Control verwenden wir, um die Größe der GIF-Grafik zu ermitteln, das WebBrowser-Control übernimmt die Darstellung der animierten GIF-Grafik. Nun wird ja aber bekanntlich immer automatisch ein Scrollbalken im WebBrowser-Control angezeigt, sowie automatisch auch ein kleiner Rand freigehalten. Um diese "Einschränkungen" zu umgehen, schreiben wir eine kleine HTML-Seite mit folgendem Body-Attribut: <html> <body leftMargin=0 topMargin=0 marginheight=0 marginwidth=0 scroll='no'> <img src="GIF-Datei.gif"></img> </body> </html> Und genau diesen kurzen HTML-Code übergeben wir dem Navigate-Befehl des WebBrowser-Controls. Zuvor müssen wir aber noch die Größe des Browser-Fensters entsprechend der Bildgröße anpassen. Hierzu laden wir die GIF-Grafik zunächst in ein unsichtbares Image-Control. Da sich die Größe des Image-Controls standardmässig immer der Grafik anpasst, können wir so ganz leicht die Größe an das WebBrowser-Control übetragen: ' Grafik-Größe ermitteln Image1.LoadPicture("GIF-Datei.gif") ' WebBrowser-Fenstergröße anpassen With WebBrowser1 .Width = Image1.Width + 45 .Height = Image1.Height + 45 End With Mit diesen paar Codezeilen können Sie also ab sofort Ihre animierte GIF-Grafiken anzeigen lassen. Hier der vollständige Code ' Animierte GIF-Grafik im WebBrowser-Control anzeigen Public Sub ShowAnimatedGIF(WB As Control, _ img As Control, ByVal sFileGIF As String) Dim sHTML As String ' Größe bestimmten img.Picture = LoadPicture(sFileGIF) With WB ' Größe: WebBrowser-Control .Width = img.Width + 45 .Height = img.Height + 45 ' HTML-Code für das Anzeigen der Grafik sHTML = "about:" & _ "<html>" & _ "<body leftMargin=0 topMargin=0 marginheight=0 " & _ "marginwidth=0 scroll='no'>" & _ "<img src=""" & sFileGIF & """></img></body></html>" .Silent = True .Navigate sHTML End With End Sub |