PDA

Vollständige Version anzeigen : verknüpfter Bilderimport in Datenbank


AndyPSE
26.04.2001, 09:28
Ich hab ne Datenbank mit sehr vielen Infos. Auf ein Formular sollen nun auch noch Bilder eingebunden werden (zu den jeweiligen Infos). Sollen aber nicht in die Datenbank, sondern extern in einem Verzeichnis liegen bleiben. Bilder sind nummeriert von 1.jpg bis 100000.jpg. Somit soll nur der name als Zeiger/Verknüpfung gespeichert werden, das nachträgliche Änderungen in der Datenbank automatisch passieren. Wie stelle ich das auf dem Formular an. OLE-Objekt??? Wie stelle ich eine Verknüpgung zwischen einem Bild und den dazugehörenden Daten auf dem Formular her???

Alexander Jan Peters
26.04.2001, 11:10
Hallo,

zuerst einmal einige Kommentare zu Deinem Konzept:
Die Lösung, Bilder extern zu speichern ist sicherlich sinnvoll, führt aber, wenn sie bei jedem Datensatz angezeigt werden sollen zu einer grausigen Performance.
Du hast ständig ewig lange Ladevorgänge beim Datensatzwechsel.

Eine Alternative ist das Einlesen der Bilder in die Datenbank, als OLE, hier ein Tip dazu (API: Suppress the "Loading Image" dialog / Dev Avish)

http://www.mvps.org/access/api/api0038.htm

oder aber, und das halte ich für die beste Lösung, per AppendChunk als Binärdatei und gebundenen Objektfeldern lösen.
Ich meine eine Beispieldatei dafür ist auf der Website von

www.accessware.de (http://www.accessware.de)

zu finden, bin mir da aber nicht so sicher, da die Seite z.Zt. nicht erreichbar ist.

Das Anzeigen von Bilder, um auf Deine Frage zurückzukommen, kannst Du im Current-Ereignis Deines Formulars einbauen.

Private Sub Form_Current()
Dim strPath as String

strPath = Me.txtBildPfad
If Len(strPath) = 0 then
Exit Sub
Else
'Hier sollte vielleicht vorher noch eine Überprüfung auf die Gültigkeit der Pfadangabe erfolgen
Me!picBild.Picture = strPath
'Um ein in der Datenbank als OLE gespeichertes Bild zu bekommen, folgende Variante
'Me!picBild.PictureData = Me.txtBildOLE
Me.Repaint
End If

End Sub

Du benötigst ein Formular mit einem ungebundenen Bild-Feld und eine an die Tabelle gebundenes Textfeld txtBildPfad, in dem der Pfad angezeigt wird.
Zu diesem Thema ist auch etwas in der KnowHow-DB zu finden.

MfG

A.J. Peters