Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Bild ausgeben von einem lokalen Verzeichnis (https://www.delphipraxis.net/100472-bild-ausgeben-von-einem-lokalen-verzeichnis.html)

Jack23 28. Sep 2007 20:43

Datenbank: Access • Version: 203 • Zugriff über: ADO

Bild ausgeben von einem lokalen Verzeichnis
 
Hallo

Tut mir ja leid. Eine frage fertig schon kommt die nächste. Aber mann muss ja für ein anderes Thema ja ein neues aufmachen.

Also ich habe eine Adresse in Access gespeichert: z.B C:\Dokumente und Einstellungen\test.jpg

So nun möchte ich dieses Bild aber in Delphi eingefügt haben. Am besten so das ich es gut positionieren kann. Die Adresse wird später pro Daten ausgelesen. Geht das überhaupt das, dass Bild angezeigt wird?

s-off 28. Sep 2007 20:44

Re: Bild ausgeben von einem lokalen Verzeichnis
 
Nutze ein TImage.

Jack23 28. Sep 2007 20:51

Re: Bild ausgeben von einem lokalen Verzeichnis
 
Ich nutze das DBImage aber es wird immer nur der Feldname angezeigt.

Pfoto 28. Sep 2007 21:05

Re: Bild ausgeben von einem lokalen Verzeichnis
 
Hi,

wenn du nur den Pfad in der DB speicherst, reicht es,
wenn du das normale TImage benutzt.
Dann einfach den Pfad aus der DB auslesen und
das Bild über TImage laden.

Wenn du das Bild selbst in der DB speicherst (also BLOB),
macht erst das TDBImage Sinn.

Gruß
Pfoto

Jack23 28. Sep 2007 21:35

Re: Bild ausgeben von einem lokalen Verzeichnis
 
Wie bekomme ich denn das Bild in meine Access DB?

Pfoto 28. Sep 2007 22:32

Re: Bild ausgeben von einem lokalen Verzeichnis
 
Ich habe es bei mir für NexusDB implementiert,
hier ein Beispielcode:
Delphi-Quellcode:
var
  ms: TMemoryStream;
begin
  ms := TMemoryStream.Create;
  try
    ms.LoadFromFile('Imagefile.jpg');
    with Query1 do
    begin
      with SQL do
      begin
        Clear;
        Add('INSERT INTO (ImageField)');
        Add('VALUES (:Image )');
      end;
      Query1.ParamByName('Image').SetBlobData(ms.Memory, ms.Size);
      // oder alternativ
      // Query1.ParamByName('Image').LoadFromStream(ms, ftGraphic);
      ExecSQL;
    end;
  finally
    ms.Free;
  end;
Hoffe, es hilft dir.


Ich habe auf www.swissdelphicenter.ch noch folgendes gefunden:
http://www.swissdelphicenter.ch/de/showcode.php?id=1748



Gruß
Pfoto


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:45 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz