Wenn Jpeg's nicht wollenWer schon einmal ein Fotoalbum oder eine ähnliche Anwendung mit Access entwickeln wollte, hat dieses Problem schon einmal durchexerziert: Wie vom Zufall bestimmt will Access das eine JPEG-Bild im Formular oder Bericht anzeigen, ein anderes aber nicht. Was passiert?Abbildungen zeigt man in Access-Formularen und -Berichten üblicherweise mit dem Bild-Steuerelement an. In den meisten Fällen funktioniert das auch reibungslos - aber eben nicht immer. Viele Probleme treten in Zusammenhang mit JPG-Bildern auf, einige sind aber auch allgemeiner Natur. In den meisten Fällen liegt es jedoch an fehlenden Grafik-Filtern von Office.

Die resultierende Fehlermeldung sieht dann wie in Abbildung 1 aus.
Abbildung 1: Fehlermeldung bei Problemen mit JPG-Bildern
Fehlender Grafikfilter?In manchen Fällen ist einfach der fehlende Grafikfilter des Officepaketes nicht installiert. Im ersten Ansatz kann man versuchen, die entsprechenden Grafikfilter von der Setup-CD der verwendeten Office-Version nachzuinstallieren.
Leider ist diese Lösung nicht besonders befriedigend, da sie erstens nicht immer zum Erfolg führt und es zweitens immer sehr blöd aussieht, wenn andere Benutzer erstmal noch einige anderen Anwendungen, Filter, Treiber und dergleichen nachinstallieren müssen, bevor die neue Anwendung zum Einsatz kommen kann. Lösung per APIEine leicht zu realisierende Lösung, die zusätzlich keinerlei Installation von Grafikfiltern mehr erfordert, ist die von Stephen Lebans (www.lebans.com). Man importiert lediglich einige Module, die API-Deklarationen und deren Aufrufe in verschiedenen Funktionen und Prozeduren beinhalten und ersetzt dann die Anweisung, die zum eigentlichen Füllen des gewünschten Bildsteuerelements führt.
Die erforderlichen Beispieldatenbanken und weiter Erläuterungen finden Sie unter folgendem Link: http://www.lebans.com/loadjpeggif.htm
Diese beiden Links führen direkt zu Beispieldatenbanken inklusive der benötigten Module und vielen weiteren Anwendungsfällen:
A97LoadJpegGif.zip (Access 97)
A2KLoadJpegGif.zip (Access 2000 und höher)
Angenommen, die folgende Anweisung dient zum Anzeigen eines auf der Festplatte gespeicherten Bildes in einem Bildsteuerelement auf einem Formular, wobei picAbbildung der Name des Bildsteuerelements ist:
Me!picAbbildung.Picture = "c:\test.jpg"
Dann ersetzt man diese Anweisung einfach durch den folgenden Funktionsaufruf:
fLoadPicture Me!picAbbildung, "c:\test.jpg"
Alles weitere übernehmen die in den Modulen gespeicherten Prozeduren. |