Bilder in Access, Teil I

Bilder kommen in Access an den verschiedensten Stellen vor: Als Daten der Datenbank etwa zur Darstellung von Personen oder Artikeln, in Menüs, Ribbons und Kontextmenüs, in ListView- und TreeView-Steuerelementen oder als Element einer Schaltfläche oder weiterer Steuerelemente. Es gibt verschiedene Möglichkeiten, Bilder in Access verfügbar zu machen. In dieser Artikelreihe schauen wir uns die unterschiedlichen Varianten an und gehen auf Vor- und Nachteile ein.

Beispieldatenbank

Die Beispiele dieses Artikels finden Sie in der Datenbank 1308_Bilder.mdb.

Bilder in Access

Wenn Sie sich einmal verschiedene Anwendungen ansehen, die sich auf Ihrem Rechner befinden oder Vergleiche zu früheren Anwendungen ziehen, werden Sie feststellen, dass die Darstellung sich stetig verändert und durch den Einsatz von Icons eine hübsche und benutzerfreundliche Oberfläche erstellen lässt.

Dies bezieht sich allein auf die Elemente der Benutzeroberfläche. Eine ganz andere Rolle spielt die Darstellung von Daten in Form von Bildern – etwa durch die Abbildung von Personen oder Artikeln.

Beide Einsatzmöglichkeiten von Bildern haben verschiedene Ziele und es verbergen sich auch verschiedenste technische Ansätze dahinter. In dieser Artikelreihe werden wir uns diese von A bis Z ansehen.

Einige der hier beschriebenen Techniken sind erst ab Access 2007 mit der dort eingeführten neuen Version des Bildsteuerelements verwendbar.

Bilder in OLE-Feldern speichern

Seit ewigen Zeiten gibt es mit dem OLE-Feld eine Möglichkeit, sowohl Bilder als auch Dateien wie etwa Word-Dokumente in einem Feld einer Access-Tabelle zu speichern. Dies gelingt ganz einfach: Sie legen eine Tabelle mit einem OLE-Feld wie in Bild 1 an. Wechsel Sie dann in die Datenblattansicht und klicken Sie mit der rechten Maustaste auf das OLE-Feld (siehe Bild 2).

Tabelle mit einem OLE-Feld

Bild 1: Tabelle mit einem OLE-Feld

Füllen eines OLE-Feldes

Bild 2: Füllen eines OLE-Feldes

Wählen Sie dann aus dem Kontextmenü den Eintrag Objekt einfügen … aus und es erscheint der Dialog zum Hinzufügen eines OLE-Objekts. Wählen Sie dort wie in Bild 3 die Option Aus Datei erstellen aus. Mit der Durchsuchen-Schaltfläche öffnen Sie einen Datei öffnen-Dialog, der bei der Auswahl der einzufügenden Datei hilft.

Dialog zum Einfügen eines Objekts in ein OLE-Feld

Bild 3: Dialog zum Einfügen eines Objekts in ein OLE-Feld

Nach der Auswahl können Sie mit der Option Verknüpfen noch festlegen, ob sich änderungen an der Originaldatei auf die in der Tabelle gespeicherte Version auswirken sollen.

Nach dem Speichern zeigt das OLE-Feld ganz banal den Wert Paket an (gelegentlich auch Package). Ein Doppelklick auf dieses Feld bietet die Möglichkeit, die Datei mit der verknüpften Anwendung zu öffnen. Diesen Dialog können Sie für spätere Aufrufe deaktivieren (siehe Bild 4).

öffnen einer in einem OLE-Feld gespeicherten Datei

Bild 4: öffnen einer in einem OLE-Feld gespeicherten Datei

Wenn Sie ein Word-Dokument in das OLE-Feld einfügen, zeigt dieses nicht Paket oder Package an, sondern Word Document. Am Beispiel eines Word-Dokuments wollen wir kurz zeigen, wie sich die Verknüpfen-Option auswirkt. Dazu fügen Sie ein Word-Dokument bei aktivierter Verknüpfen-Option hinzu. öffnen Sie das Word-Dokument testweise per Doppelklick auf das OLE-Feld.

Schließen Sie es und öffnen das Dokument dann über das Dateisystem. ändern Sie den enthaltenen Text und speichern Sie das Dokument. Klicken Sie dann erneut doppelt auf das Dokument im OLE-Feld und überzeugen Sie sich davon, dass die änderungen auch in das im OLE-Feld gespeicherte Dokument übernommen wurden. Davon abgesehen öffnet Access nun scheinbar das Ursprungsdokument, was dadurch sichtbar wird, dass die übliche temporäre Datei eines geöffneten Word-Dokuments im Windows Explorer angezeigt wird (siehe Bild 5).

Temporäre Word-Datei

Bild 5: Temporäre Word-Datei

Problematisch wird es, wenn Sie die Originaldatei im Dateisystem löschen: Dann meldet Access einen Fehler, wenn Sie versuchen, die Datei per Doppelklick auf die Verknüpfung im OLE-Feld zu öffnen.

OLE-Bild im Formular

Wie nun zeigen wir ein in einem OLE-Feld gespeichertes Bild in einem Formular an Dazu erstellen wir zunächst ein neues Formular und speichern dieses unter dem Namen frm-OLE.

Stellen Sie die Eigenschaft Datenherkunft auf die Tabelle tblOLE ein. Ziehen Sie dann alle Felder der Datenherkunft aus der Feldliste in den Formularentwurf (siehe Bild 6).

Formular mit OLE-Feld

Bild 6: Formular mit OLE-Feld

Ein Wechsel in die Formularansicht liefert leider nicht den erwarteten Effekt: Das OLE-Feld zeigt lediglich ein Icon mit dem Namen des gespeicherten Dokuments an (siehe Bild 7).

Formular mit OLE-Feld in der Formularansicht

Bild 7: Formular mit OLE-Feld in der Formularansicht

Warum gelingt dies nicht Die aktuellste Access-Version, mit der uns dies gelungen ist, war Access 2003 (siehe Bild 8).

OLE-Feld mit Abbildung unter Access 2003

Bild 8: OLE-Feld mit Abbildung unter Access 2003

Möchten Sie weiterlesen? Dann lösen Sie Ihr Ticket!
Hier geht es zur Bestellung des Jahresabonnements des Magazins Access [basics]:
Zur Bestellung ...
Danach greifen Sie sofort auf alle rund 400 Artikel unseres Angebots zu - auch auf diesen hier!
Oder haben Sie bereits Zugangsdaten? Dann loggen Sie sich gleich hier ein:

Schreibe einen Kommentar