2008-09-02 10 views
6

Ich habe eine MS-Access-App (1/10 MS-Acccess, 9/10 MS-SQL), die Fotos von einigen Assets anzeigen muss zusammen mit ihren Spezifikationen. Derzeit werden die Bilder in einer MS-Access-Tabelle als OLE-Objekt gespeichert (und von den Benutzern in das Feld kopiert).Gibt es eine Möglichkeit, MS-Zugriff auf Bilder von externen Dateien anzuzeigen

Aus verschiedenen Gründen möchte ich die ursprünglichen .jpgs in einem Ordner auf dem Netzlaufwerk speichern und sie aus dem Anwendungsteil verweisen. Ich habe erwogen, in den MS-SQL-Image-Datentypen (und seinen Ersatz varbinary) zu ziehen, aber ich denke, dass meine Benutzerpopulation das Konzept des Netzwerkordners leichter verstehen wird.

Wie bekomme ich MS Access, um den Inhalt eines .jpg anzuzeigen?

Antwort

7

Eine weitere Option besteht darin, Ihrem Formular ein Bildsteuerelement hinzuzufügen. Es gibt eine Eigenschaft dieses Steuerelements (Bild), die einfach der Pfad zum Bild ist. Hier ist ein kurzes Beispiel in VBA, wie Sie es verwenden könnten.

txtPhoto wäre ein Textfeld in das Datenbankfeld mit dem Pfad zu dem Bild imgPicture gebunden sein ist die Bildsteuerung Das Beispiel ein Klick-Ereignis für eine Schaltfläche, die auf den nächsten Datensatz voranbringen würden.

Private Sub cmdNextClick() 
    DoCmd.GoToRecord , , acNext 
    txtPhoto.SetFocus 
    imgPicture.Picture = txtPhoto.Text 
    Exit Sub 
End Sub 
0

Der einfachste Weg ist wahrscheinlich, einen Internet Explorer auf eines Ihrer Formulare zu setzen. Sehen Sie sich diese Seite an: http://www.acky.net/tutorials/vb/wbrowser/

Da Sie dieses Objekt in Access referenzieren können, müssen Sie nur das Webbrowser-Steuerelement auf den Pfad der .jpg (NavigateTo(), wenn ich mich richtig erinnere).

EDIT: Der obige Link wurde nur gegoogelt und aus den Ergebnissen ausgewählt (erste, die schnell geöffnet). Ich denke nicht, dass es ein sehr gutes Tutorial ist, es hat nur alle Hinweise, die du brauchst ... Sieh dir msdn etc. an, wenn du mehr Informationen brauchst!

3

Haben Sie sich Stephen Lebans' Lösungen? Hier ist eine:

Image Class Module for Access

Schauen Sie sich die Liste der anderen Code auf der linken Seite dieser Webseite. Vielleicht finden Sie etwas, das genau Ihren Anforderungen entspricht.

+0

Dies kann die Arbeit erledigen, aber ich bin ungern ein Tutorial aus dem Jahr 2002 mit Access 97 im Jahr 2013 folgen. – StockB

+0

Leider ist der Zugang nicht zu weit von dem entfernt, was Leban geschrieben hat, als er diese Tutorials geschrieben hat. Ich habe kürzlich einige grafische Arbeiten im Bereich Access gemacht, und diese waren sehr praktisch - sie waren tatsächlich die besten Ressourcen, die ich in dieser Hinsicht finden konnte. – Johanness

0

Sie können versuchen, ein ActiveX-Steuerelement namens AccessImagine, macht das Hinzufügen von Bildern zur Datenbank bequemer - Sie können von Datei laden, Scannen, Einfügen aus dem Puffer oder Drag-n-Drop. Sie können das Bild direkt in der Datenbank zuschneiden und es automatisch neu bemastern. Bei Bedarf wird der externe Bildspeicher automatisch verarbeitet.

0

Beachten Sie, dass dies in Access 2010 (und höher) einfach zu tun ist, da das Image-Steuerelement an ein Feld in der Tabelle gebunden werden kann, die den Pfad zu der Image-Datei enthält (.jpg, .png,. ..). Keine VBA erforderlich.

Für weitere Details siehe meine andere Antwort here.