Einzelnen Beitrag anzeigen

Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.542 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Bild über TImage aus der Datenbank holen?

  Alt 7. Okt 2007, 13:26
Hier mal ein Beispiel aus einem Testprojekt von mir (deshalb die blöden Bezeichner):
Delphi-Quellcode:
procedure TFrmMain.LoadPic;
var Stream: TStream;
    aJPG: TJPEGImage;
begin
  ZQuery1.Close;
  with ZQuery1.SQL do
    begin
      Clear;
      Add('SELECT Grafik FROM Bild');
      Add('WHERE ID = :id');
     end;
  ZQuery1.ParamByName('id').AsInteger := PKnoten(TreeView1.Selected.Data)^.KnotenId;
  ZQuery1.Open;
  if (ZQuery1.RecordCount > 0) and not ZQuery1.FieldByName('Grafik').IsNull and ZQuery1.FieldByName('Grafik').IsBlob then
    begin
      //Hier ist der interessante Teil
      aJPG := TJPEGImage.Create;
      Stream := ZQuery1.CreateBlobStream(ZQuery1.FieldByName('Grafik'),bmRead);
      try
        aJPG.LoadFromStream(Stream);
        Image1.Picture.Graphic := aJPG;
        FitImage;
      finally
        Stream.Free;
        aJPG.Free;
      end;
    end
  else
    begin
      Image1.Picture.Assign(nil);
      Label1.Visible := true;
    end;
end;
[edit] Oder ist nur der Pfad in der DB abgelegt? [/edit]
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat