Zur Hauptseite ... Zum Onlinearchiv ... Zum Abonnement ... Zum Newsletter ... Zu den Tools ... Zum Impressum ... Zum Login ...

Gedrucktes Heft

Diesen Beitrag finden Sie in Ausgabe 6/2005.

Unser Angebot für Sie!

Lesen Sie diesen Beitrag und 500 andere sofort im Onlinearchiv, und erhalten Sie alle zwei Monate brandheißes Access-Know-how auf 72 gedruckten Seiten! Plus attraktive Präsente, zum Beispiel das bald erscheinende Buch 'Access 2010 - Das Grundlagenbuch für Entwickler'!

Diesen Beitrag twittern

Zusammenfassung

Lernen Sie einige Techniken kennen, mit denen Sie ihre Sammlung digitaler Fotografien in den Griff bekommen.

Techniken

VBA, Formulare, Berichte

Voraussetzungen

Access 2000 oder höher

Beispieldateien

Bilddatenbank.mdb

Digitale Fotografien im Griff

André Minhorst, Duisburg

Kennen Sie das auch? Die digitalen Fotos werden mal hier und mal da auf die Festplatte gebannt, und hierhin und dorthin wird noch eine Sicherung gespeichert. Die Übersicht kann da sehr schnell leiden. Oder Sie möchten, bevor es weitere 1000 neue Fotos auf die Festplatte verschlägt, endlich einmal ein paar Abzüge machen lassen. Das Zusammenstellen und der Transport der Bilder zum Fotostudio bringt dann weitere Hindernisse. Mit der Lösung in diesem Beitrag behalten Sie den Überblick - und mehr ...

Das Dilemma

Wenn man nicht von Anfang an Ordnung hält, bricht schnell Chaos aus. Das gilt für den Schreibtisch wie für die Festplatte - und dort vor allem für zu archivierende Daten. Zu diesen gehören ganz sicher Digitalfotos - man schießt den Speicher der Kamera voll, leert den Inhalt auf der Festplatte aus, macht neue Schnappschüsse und so fort.

Eine Digitalkamera lädt dazu ein, ruhig mal einen Klick zu viel zu riskieren - kostet ja schließlich nichts. Das heißt - fast nichts, denn ein wenig Speicherplatz geht schon verloren, wenn man die Fehlschüsse nicht gleich von der Platte putzt oder gar nicht erst dort speichert.

Knipsen, bis die Platte platzt

Aber seien Sie mal ehrlich: Solange der Speicherplatz auf der Festplatte nicht dem Ende zugeht, besteht scheinbar kein Grund zum Aussortieren der überflüssigen Bilder. "Das mache ich, sobald ich die besten Schnappschüsse dieser Rutsche entwickeln lasse!" - so heißt es sicher bei vielen Hobby-Fotografen.

Bis man dann wenig später feststellt, dass mal wieder einige hundert neue Fotos zusammengekommen sind, ohne dass man auch nur ein einziges hat entwickeln lassen.

Und das ist auch schon das nächste Problem: Will man die Bilder online entwickeln lassen, stellt man schnell fest, dass DSL und Konsorten zwar einen passablen Download bieten, beim Upload aber nur ein wesentlich geringerer Datendurchsatz möglich ist. Und bei Fotos à zwei Megabyte macht das nach ein paar Bildern keinen Spaß mehr.

Also beschließen Sie, auch mal den mittlerweile zur Standardausrüstung gehörenden CD- oder DVD-Brenner zu verwenden und einen Rutsch Bilder zum nächsten Discounter oder auch zum Fotofachgeschäft zu bringen.

Also nehmen wir mal drei Abzüge von diesem hier, zwei von jenem, ... - halt: Wie kann ich von vornherein festlegen, wie viele Abzüge ich von jedem Bild haben möchte? Ach, das soll ich dann im Geschäft machen - mit dem quengelnden Kind auf dem Arm und fünfzehn anderen Kunden im Rücken, die gerne mal ein wenig indiskret den einen oder anderen Blick erhaschen möchten? Nein. Dann doch lieber direkt die Bilder mehrfach auf CD brennen, ab in den Fotoladen, und "einmal von jedem eins, 10 x 15, matt bitte!".

Wenn Sie bei dieser Vorgehensweise noch den Überblick bewahren: Herzlichen Glückwunsch. Falls nicht oder falls vielleicht auch mal der weniger bedarfte Partner oder die Kinder Fotos zusammenstellen sollen, ohne dass anschließend das Backup zum Wiederherstellen der Daten ran muss, finden Sie im vorliegenden Beitrag die Werkzeuge, um Ihre Bilder im Griff zu haben. Diese müssen Sie dann nur noch zusammensetzen - oder Sie warten bis zur nächsten Ausgabe von Access im Unternehmen.

Access & Co. helfen weiter

In den folgenden Kapiteln lernen Sie einige Techniken kennen, mit denen Sie Ihre digitale Fotosammlung verwalten:

  • Routine zum Einlesen aller .jpg-Dateien eines Verzeichnisses und der enthaltenen Unterverzeichnisse
  • Klasse zum Ermitteln von Bilddaten - unter anderem Erstellungsdatum, Abmessungen, Kameratyp und weitere Daten zu den Kameraeinstellungen zum Zeitpunkt der Aufnahme
  • Tool zum Manipulieren von digitalen Bildern: Mit ImageMagick können Sie von VBA-Routinen aus Änderungen an digitalen Fotos vornehmen - etwa, um Mini-Versionen der Bilder zu erstellen, die in der Datenbank gespeichert werden können.
  • Technik zum Einlesen von Bildern in OLE-Objekt-Felder einer Tabelle
  • Technik zum Anzeigen von Bildern aus OLE-Feldern, ohne diese zwischendurch auf der Festplatte speichern zu müssen
  • Im vorliegenden Beitrag lernen Sie die grundlegenden Techniken kennen, die Sie in einer der folgenden Ausgaben von Access im Unternehmen zu einer komfortablen Bildverwaltung zusammensetzen.

    Bilder erfassen

    Bevor Sie mit dem Vorbereiten einer Ladung von Bildern zum Entwickeln beginnen können, müssen Sie zunächst einmal die Festplatte nach den vorhandenen Bildern durchkämmen. Auf diese Weise können Sie vielleicht direkt feststellen, wie viele Sicherheitskopien des einen oder anderen Bildes sich dort mittlerweile befinden.

    JPEGs nach vorne, bitte!

    Zum Erfassen der Bilder müssen Sie nur die gewünschten Verzeichnisse durchlaufen und alle enthaltenen Dateien finden, die mit .jpg enden.

    Die erste Version dieser Routine, die Sie später sukzessive ausbauen werden, arbeitet mit einer Tabelle namens tblBilder, die neben dem Primärschlüssel lediglich den Dateinamen und den Dateipfad der Bilddateien speichert. Diese Informationen sollen separat in zwei Textfeldern mit je 255 Zeichen verwaltet werden.

    Der Aufruf der Routine aus Quellcode 1 lautet etwa folgendermaßen:

    BilderEinlesenBasis "<Verzeichnis>"

    Bildinformationen lesen

    Eines der größten Probleme im Zusammenhang mit Fotos - egal ob im herkömmlichen oder digitalen Format - ist oft die fehlende Zeitangabe. Selbst das Speicherdatum der entsprechenden Datei ist nicht unbedingt zuverlässig: Kopieren Sie einmal eine Datei und schauen Sie sich das Erstellungsdatum der neuen Datei an - es ist das aktuelle Datum. Durch einfaches Kopieren der Dateien verlieren Sie also wichtige Informationen. Zwar liefert das Änderungsdatum ebenfalls das eigentliche Erstellungsdatum (vorausgesetzt, Sie haben das Foto noch nicht bearbeitet), aber Otto Normalverbraucher weiß dies unter Umständen nicht.

    Quellcode 1: Alle .jpg-Dateien in einer Tabelle speichern

    Public Sub BilderEinlesenBasis(strVerzeichnis As String)

        Dim i As Integer

        Dim intOrdner As Integer

        Dim strDateiname As String

        Dim strOrdner() As String

        Dim db As Database

        Dim rstBilder As Recordset

        

        Set db = CurrentDb

        Set rstBilder = db.OpenRecordset("tblBilder")

        strDateiname = Dir(strVerzeichnis)

      

        Do While strDateiname <> ""

            If InStrRev(strDateiname, ".jpg") > 0 Then

                rstBilder.AddNew

                rstBilder!Dateiname = strDateiname

                rstBilder!Dateipfad = strVerzeichnis

                rstBilder.Update

            End If

            strDateiname = Dir

        Loop

        strDateiname = Dir(strVerzeichnis, vbDirectory)

        

        Do While strDateiname <> ""

            If strDateiname <> "." And strDateiname <> ".." Then

                If GetAttr(strVerzeichnis & strDateiname) And vbDirectory Then

                    intOrdner = intOrdner + 1

                    ReDim Preserve strOrdner(intOrdner)

                    strOrdner(intOrdner) = strVerzeichnis & strDateiname

                End If

            End If

            strDateiname = Dir

            DoEvents

        Loop

        For i = 1 To intOrdner

            BilderEinlesen strOrdner(i) & "\"

        Next i

        rstBilder.Close

        Set rstBilder = Nothing

        Set db = Nothing

    End Sub

    Eine Alternativlösung ist das Integrieren des Erstellungsdatums am rechten unteren Rand des Bildes, aber das stört doch sehr, wenn man mal ein Bild in einen Bilderrahmen stecken möchte.

    Ein Bild ist mehr als ein Bild

    Zum Glück denken die Kamerahersteller weiter: Sie speichern in den Bilddateien ausführliche Informationen über das Bild - und dazu gehören nicht nur das Datum, an dem das Bild aufgenommen wurde, sondern noch viele Informationen mehr.

    Diese Informationen stehen an einer festen Stelle in den Bilddateien, die sich bei genauerem Hinsehen oft als EXIF-Dateien (Exchangeable Image File Format) entpuppen, die prinzipiell als JPEG-Dateien mit zusätzlichen Informationen betrachtet werden können. Die Spezifikation solcher Dateien finden Sie unter der Internetadresse http://www.exif.org/specifications.html.

    Quellcode 2: Routine zum Ausgeben einiger Informationen einer Bilddatei

    Public Sub BilddatenAusgeben(strBildname As String)

        Dim objExifReader As ExifReader

        Set objExifReader = New ExifReader

        With objExifReader

            .Load strBildname

            Debug.Print .Tag(DateTimeOriginal)

            Debug.Print .Tag(ExifImageHeight)

            Debug.Print .Tag(ExifImageWidth)

        End With

        Set objExifReader = Nothing

    End Sub

    Abb. 1: Auswählen der verschiedenen Eigenschaften einer Bilddatei

    Wie kommen Sie aber nun an die in der Bilddatei gespeicherten Informationen heran? Zum Glück muss man hier nicht das Rad neu erfinden, sondern kann auf bestehende Werkzeuge zurückgreifen. In diesem Fall handelt es sich um eine VB-Klasse, die der Public Domain-Lizenz unterliegt und unter diesem Link zu finden ist: http://sourceforge.net/projects/exifclass

    Diese Klasse binden Sie in das VBA-Projekt einer Access-Datenbank ein, indem Sie in der VBA-Entwicklungsumgebung den Menüeintrag Datei/Datei importieren... ausführen und die einzufügende Datei auswählen - in diesem Fall die Klasse ExifReader.cls.

    Auslesen von EXIF-Daten

    Um die Klasse für das Auslesen von Bildinformationen zu verwenden, erstellen Sie am einfachsten eine kleine Routine wie in Quellcode 2. Die Routine gibt die Höhe und die Breite (normalerweise in Pixel, prüfen Sie dies vorher) sowie das Erstellungsdatum des Bildes aus.

    Es gibt noch eine Menge weiterer Informationen wie den Typ der Kamera, mit der das Foto erstellt wurde, und vor allem über die beim Fotografieren verwendeten Einstellungen.

    Diese können Sie leicht über die entsprechenden Parameter der Tag-Eigenschaft der Klasse auslesen - IntelliSense liefert gute Dienste beim Auswählen der richtigen Eigenschaft (s. Abb. 1).

    Die von der Routine BilddatenAusgeben erzeugte Ausgabe enthält nicht zufällig genau diese Informationen: Erstens ist für das Speichern von Bilddaten das Erstellungsdatum sehr wichtig und die Größe der Bilder benötigen Sie, wenn es weiter unten darum geht, Miniaturen der Bilder zum Speichern in der Datenbank zu erstellen.

    Erstens lassen sich auf diese Weise die Bilder so verkleinern, dass diese alle in ein gleiches Viereck von beispielsweise 100 Pixel Kantenlänge passen, und zweitens erhalten Sie so die Proportionen der Bilder.

    Um Informationen wie Erstellungsdatum, Höhe und Breite eines Bildes ebenfalls in der Datenbank zu speichern, fügen Sie der Routine aus Quellcode 1 einige Zeilen hinzu, löschen gegebenenfalls bereits angelegte Bilddaten und starten die Routine erneut.

    Die Tabelle zum Speichern der Bilddaten erweitern Sie wie in Abb. 2 - damit erstellen Sie auch direkt ein Feld zum Speichern der Thumbnails.

    Abb. 2: Entwurfsansicht der Tabelle tblBilder

    Abb. 3: Das OLE-Steuerelement ist das Objekt der Begierde.

    Thumbnails erstellen

    Um die Anzeige von Bildern zu beschleunigen, macht es Sinn, nicht auf die teilweise über zwei Megabyte großen Bilddateien zuzugreifen, sondern so genannte Thumbnails zu erstellen.

    Besonders oft kommen diese herunterskalierten und damit wesentlich weniger Speicherplatz beanspruchenden Versionen von Bildern in den Übersichtsseiten in Internet-Bildsammlungen vor.

    Dort klickt man dann das gewünschte Bild an, um es in Originalgröße anzuzeigen oder herunter zu laden.

    Das Problem ist in diesem Fall nicht das Speichern der Thumbnails in der Datenbank, sondern deren Erstellung aus den Original-Bilddateien. Tools, die dies erledigen, gibt es eine Menge - aber die meisten kosten den einen oder anderen Euro. Eine günstige Lösung für diesen Zweck ist ImageMagick. Diese Software liefert eine Menge Funktionen zum Bearbeiten von Grafikdateien und noch vieles mehr.

    Die Windows-Installationsroutine von ImageMagick können Sie unter der folgenden Internetadresse herunterladen: http://www.
    imagemagick.org/script/binary-releases.php

    Dort finden Sie auch die Datei ImageMagick-6.2.5-4-Q16-windows-dll.exe. Beachten Sie bei der Installation, dass Sie das ImageMagicObject OLE Control mitinstallieren - dieses können Sie von VBA aus referenzieren, um auf dessen Eigenschaften und Methoden zuzugreifen (s. Abb. 3).

    Nach der Installation können Sie die Funktion der Anwendung durch Absetzen der folgenden Anweisungen in der Kommandozeile von Windows testen:

    convert logo: logo.gif

    identify logo.gif

    imdisplay logo.gif

    Außerdem sollten Sie nach Einbinden der Bibliothek ImageMagickObject 1.0 Type Library auf die Objekte dieser Bibliothek zugreifen können (s. Abb. 4).

    Quellcode 3: Routine zum Erstellen eines Thumbnails aus einer Bilddatei

    Public Sub ThumbnailErstellen(strDateipfad As String, strZielpfad As String, lngBreite As Long, _
        lngHoehe As Long, lngKantenlaengeMax As Long)

        Dim strFaktor As String

        Dim sngQuotient As Single

        Dim objImageMagick As ImageMagickObject.MagickImage

        Set objImageMagick = New ImageMagickObject.MagickImage

        If lngBreite > lngHoehe Then

            sngQuotient = lngBreite / lngKantenlaengeMax

        Else

            sngQuotient = lngHoehe / lngKantenlaengeMax

        End If

        strFaktor = Replace(100 / sngQuotient & "%", ",", ".")

        With objImageMagick

            .Convert strDateipfad, "-resize", strFaktor, strZielpfad

        End With

    End Sub

    Abb. 4: Die Methoden und Eigenschaften des ImageMagick-Objektmodells sind in VBA verfügbar.

    Weitere Informationen zu dieser Software erhalten Sie auf der Internetseite http://www.image
    magick.org.

    Für die geplante Anwendung benötigen Sie den Befehl Convert, dessen Parameter Sie unter der Internetadresse http://www.imagemagick.org/
    script/convert.php finden.

    Die Anwendung der VBA-Schnittstelle des ImageMagick-Objektmodells ist indes etwas gewöhnungsbedürftig:

    Die einzelnen Methoden sind zwar via IntelliSense leicht erreichbar, aber die Parameter müssen als ParamArray eingegeben werden - das heißt, dass dort keine weitere IntelliSense-Unterstützung mehr stattfindet.

    Deutlich wird dies, wenn man sich einmal die vielen möglichen Parameter ansieht und sich vergegenwärtigt, dass es sich hier um eine Portierung eines Kommandozeilentools aus der Linux/Unix-Welt handelt. Und dort ist man bekanntlich sehr flexibel, was den Einsatz von Parametern angeht. Um einen ImageMagick-Befehl in VBA abzubilden, probieren Sie diesen einfach zunächst in der Kommandozeile aus und geben die einzelnen Elemente dann als durch Kommata getrennte Zeichenketten an. Für die benötigte Konvertierung verwenden Sie etwa folgende Anweisung:

    convert c:\GrossesBild.jpg -resize 50% c:\KleinesBild.jpg

    Als Methode sieht das folgendermaßen aus:

    objImageMagick.Convert "c:\GrossesBild.jpg", "-resize", "50%", "c:\KleinesBild.jpg"

    Quellcode 4: Diese Routine erzeugt mit der Funktion ThumbnailErstellen ein Thumbnail und speichert dieses in der Tabelle tblBilder.

    Sub ThumbnailInTabelle(lngBildID As Long)

        Dim bytThumbnail() As Byte

        Dim rstBilder As Recordset

        On Error GoTo ThumbnailInTabelle_Err

        Set rstBilder = CurrentDb.OpenRecordset _
            ("SELECT * FROM tblBilder WHERE BildID = " _
            & lngBildID, dbOpenDynaset)

        ThumbnailErstellen rstBilder!Dateipfad _
            & rstBilder!Dateiname, CurrentProject.Path & _
            "\Thumbnail.jpg", rstBilder!Breite, rstBilder!Hoehe, 100

        Open CurrentProject.Path & "\Thumbnail.jpg" For Binary As #1

        ReDim bytThumbnail(LOF(1))

        Get #1, , bytThumbnail()

        Close #1

        rstBilder.Edit

        rstBilder("Thumbnail").AppendChunk bytThumbnail()

        rstBilder.Update

        rstBilder.Close

    ThumbnailInTabelle_Exit:

        Erase bytThumbnail

        Set rstBilder = Nothing

        Exit Sub

    ThumbnailInTabelle_Err:

        Reset

        MsgBox Err.Description

        GoTo ThumbnailInTabelle_Exit

    End Sub

    Sie müssen also nicht sowohl jeden Parameter als auch jeden Wert als eigenes Element angeben.

    Die Routine aus Quellcode 3 sorgt dafür, dass eine Datei auf ein bestimmtes Maß zurechtgestutzt wird.

    Dabei erwartet die Routine die Dateinamen der Quell- und der Zieldatei, Höhe und Breite der Quelldatei und die maximale Kantenlänge der zu erstellenden Datei.

    Die Routine ermittelt zunächst den Faktor, um den die Datei geschrumpft werden muss, instanziert das ImageMagick-Objekt und ruft schließlich dessen Convert-Methode mit den entsprechenden Parametern auf.

    Der Aufruf der Routine ThumbnailErstellen sieht beispielsweise wie folgt aus. CurrentProject.Path ermittelt dabei den Pfad der aktuellen Datenbank.

    ThumbnailErstellen CurrentProject.Path & "\beispiel.jpg", CurrentProject.Path & "\beispielKlein.jpg", 2592, 1944, 100

    Thumbnails in der Datenbank speichern

    Die Thumbnails erstellen Sie, weil diese wesentlich weniger Speicherplatz als die Bilddateien von zwei oder mehr Megabyte Größe benötigen. Sie lassen sich leicht in der Datenbank speichern und später in einem Formular anzeigen oder in einem Bericht ausgeben.

    Gerade für die Anzeige im Formular ist eine kleine Bildgröße wichtig, weil vermutlich mehr Bilder anfallen, als auf eine Bildschirmseite passen - wenn Sie dann mal zu den nächsten x Bildern blättern möchten, sollte das nicht gerade mehrere Sekunden dauern.

    Um die Thumbnails in der Datenbank zu speichern, sind natürlich wieder ein paar Zeilen VBA-Code notwendig.

    Weiter oben haben Sie die Routine BilderEinlesen kennen gelernt, mit der Sie alle .jpg-Dateien des als Parameter angegebenen Verzeichnisses so erfassen können, dass Verzeichnis und Dateiname des Bildes in je einem Datensatz der Tabelle tblBilder gespeichert werden.

    Nun sollen natürlich auch die zu den Bildern gehörenden Thumbnails in den entsprechenden Datensätzen gespeichert werden. Dazu benötigen Sie zunächst ein zusätzliches Feld in der Tabelle. Dieses hat den Datentyp OLE-Objekt und den Namen Thumbnail.

    Die Routine aus Quellcode 4 erwartet als Parameter die BildID des Datensatzes, für den das Thumbnail in der Tabelle gespeichert werden soll.

    Abb. 5: Die Tabelle tblMitarbeiter mit als OLE-Objekten gespeicherten Thumbnails

    Nach dem Einsatz dieser Routine sieht die Tabelle tblBilder etwa wie in Abb. 5 aus.

    Bilder im Formular anzeigen

    Eine der größten Hürden beim Umgang mit Bildern in Access-Anwendungen ist die Programmierung einer Technik, mit der man die in der Datenbank gespeicherten Bilder in Formularen und Berichten anzeigen kann.

    Durch das Speichern der Thumbnails haben Sie bereits dafür gesorgt, dass Sie eine wenig Speicherplatz benötigende und damit schnell zu handhabende Version der Bilddateien verwenden können.

    Übliche Vorgehensweisen speichern nur die Bilddatei aus der Tabelle in einer Datei und verweisen dann von einem Steuerelement im Formular oder Bericht auf den Pfad dieser Datei. Es geht aber auch eleganter: Dabei kommt eine abgewandelte Form einer der Funktionen aus der oben erwähnten Beispieldatenbank von Sascha Trowitzsch zum Zuge. Diese ermöglicht es, die Bilddatei direkt vom Tabellenfeld in dem entsprechenden Steuerelement anzuzeigen.

    Als Steuerelement fungiert in diesem Fall nicht das übliche Bildsteuerelement von Access, sondern das Microsoft Forms 2.0 Image-Steuerelement.

    Dieses ist etwas unanfälliger gegen Probleme, die in Zusammenhang mit der Verwendung von .jpg-Dateien auftreten können.

    Folgendes Beispiel zeigt, wie Sie ein Bild aus einer Tabelle ohne Zwischenschritt über die Festplatte in einem Formular anzeigen können.

    Quellcode 5: Füllen des Image-Steuerelements mit dem in der Tabelle gespeicherten Bild

    Private Sub Form_Current()

        Me!imgBild.Object.Picture = CreatePix

    End Sub

    Quellcode 6: Diese Routine beinhaltet die eigentliche Funktionalität zum Einlesen des Bildes in das Image-Steuerelement.

    Private Function CreatePix() As StdPicture

        Dim rstBilder As DAO.Recordset

        Dim pix() As Byte

        Dim lSize As Long

        On Error GoTo Fehler

        Set rstBilder = Me.Recordset

        lSize = rstBilder("Thumbnail").FieldSize

        ReDim pix(lSize)

        pix() = rstBilder("Thumbnail").GetChunk(0, lSize)

        Set CreatePix = BytesToPicture(pix) 

        If CreatePix Is Nothing Then 
            MsgBox sError, vbExclamation, "OLE-Fehler" 
        End If

    Ende:

        Erase pix

        Exit Function

    Fehler:

        If Err.Number = 13 Then

            Resume Next

        Else

            MsgBox Err.Description

            Resume Ende

        End If

    End Function

    Abb. 6: Entwurfsansicht des Beispielformulars zum Anzeigen von Bildern direkt aus der Tabelle

    Die Ereignisprozedur weist dem Image-Steuerelement den Rückgabewert der Funktion CreatePix zu. Diese Routine (s. Quellcode 6) liest aus der Datensatzgruppe des Formulars den aktuellen Datensatz aus und verarbeitet den Inhalt des OLE-Objekt-Felds in der Funktion BytesToPictures so, dass dieser direkt im Formular angezeigt werden kann (s. Abb. 7).

    Abb. 7: Das Bild-Steuerelement im Einsatz

    Weitere Informationen zur Funktion BytesToPictures können Sie dem Modul mdlArrayToStdPicture entnehmen.

    Zusammenfassung und Ausblick

    Anwendungen zum Verwalten von Bildern gibt es viele - aber wie oft haben Sie sich schon über fehlende oder schlecht umgesetzte Funktionen geärgert? Da Sie mit Access arbeiten, haben Sie es in der Hand, selbst für eine passende und Ihren Ansprüchen in allen Belangen den genügende Bildverwaltung zu erstellen.

    Mit diesem Beitrag erhalten Sie eine Menge Techniken, die man noch mit einer sinnvollen Benutzeroberfläche und den benötigten Funktionen würzen kann. Der ersten selbst zusammengestellten CD für den Fotoladen um die Ecke steht dann nichts mehr im Wege. In der nächsten Ausgabe liefert Access im Unternehmen die restlichen Puzzlestücke und setzt diese zu einer Bildverwaltung zusammen, die Sie - ein wenig Engagement vorausgesetzt - Ihren Wünschen anpassen können.

    Kompletten Artikel lesen?

    Einfach für den Newsletter anmelden, dann lesen Sie schon in einer Minute den kompletten Artikel und erhalten die Beispieldatenbanken.

    E-Mail:

    Download

    Download

    Die .zip-Datei enthält folgende Dateien:

    Bilddatenbank.mdb

    Beispieldateien downloaden

    © 2003-2015 André Minhorst Alle Rechte vorbehalten.