AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

JPEG in TImage laden

Ein Thema von ilse2005 · begonnen am 15. Nov 2010 · letzter Beitrag vom 16. Nov 2010
Antwort Antwort
ilse2005

Registriert seit: 15. Nov 2010
8 Beiträge
 
#1

JPEG in TImage laden

  Alt 15. Nov 2010, 19:32
Datenbank: Acess • Version: 2010 • Zugriff über: ADO
Hallo habe schon viel rumgesucht aber leider keine Lösung gefunden. Ich habe in meiner Datenbank JPEG Bilder als Blob gespeichert. Das schreiben über Delphi funktioniert auch schon. Nun will ich aber die Bilder auch anzeigen lassen und habe folgendes versucht:
Delphi-Quellcode:
procedure TForm1.Button2Click(Sender: TObject);
var
   blob : TMemoryStream;
   BlobField: TBlobField;
   jpeg : TJPEGImage;
   bmp : TBitmap;
begin
    blob := TMemoryStream.Create();
    jpeg := TJPEGImage.Create;
// bmp := TBitmap.Create;
   with ADOTable1 do
   begin
     blob.Clear;

     try
     begin
       BlobField := FieldByName('Bild') as TBlobField ;
       blobfield.SaveToStream(blob);
       jpeg.LoadFromStream(blob);
// bmp.Assign(jpeg);
       Image1.Picture.Assign(jpeg);
     end;
     finally
       blob.free;
       jpeg.free
   end;

end;
Das Programm kompillert auch aber wenn ich den Button klicke kommt immer folgende Fehlermeldung: 'JPEG-Fehler#42'

EDIT: Besser so? Hab das Problem leider immer noch...

Geändert von ilse2005 (15. Nov 2010 um 20:08 Uhr) Grund: Code-Tag durch Delphi-Tag ersetzt
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: JPEG in TImage laden

  Alt 15. Nov 2010, 19:35
Hast du Jpeg in die Uses aufgenommen?

BTW: Bitte verwende für Delphi-Quellcode Delphi-Tags
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#3

AW: JPEG in TImage laden

  Alt 15. Nov 2010, 19:36
Kein Ressourcenschutzblock, keine Fehlerbehandlung mit Try-Except, kein Freigeben der belegten Ressourcen,... Mach erst mal die Fehler raus. Dann können wir weiter sehen.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
ilse2005

Registriert seit: 15. Nov 2010
8 Beiträge
 
#4

AW: JPEG in TImage laden

  Alt 15. Nov 2010, 20:09
habs editiert. Weiß aber immernoch nicht wo das Problem liegt.
jpeg unit ist auch eingebunden.
  Mit Zitat antworten Zitat
Benutzerbild von Bummi
Bummi

Registriert seit: 15. Jun 2010
Ort: Augsburg Bayern Süddeutschland
3.470 Beiträge
 
Delphi XE3 Enterprise
 
#5

AW: JPEG in TImage laden

  Alt 15. Nov 2010, 20:09
Delphi-Quellcode:
var
  s:TMemoryStream;
  i:TJPEGImage;
begin
  i:=TJPEGImage.Create;
  s:=TMemoryStream.Create;
  try
  TBlobField(dBild).SaveToStream(s);
  if s.Position > 0 then
      begin
        s.Position := 0;
        try
        i.LoadFromStream (s);
        Image2.Picture.Assign(i) ;
        except
        end;
      end;
  finally
  s.Free;
  i.Free
  end;
end;
Thomas Wassermann H₂♂
Das Problem steckt meistens zwischen den Ohren
DRY DRY KISS
H₂ (wenn bei meinen Snipplets nichts anderes angegeben ist Lizenz: WTFPL)
  Mit Zitat antworten Zitat
ilse2005

Registriert seit: 15. Nov 2010
8 Beiträge
 
#6

AW: JPEG in TImage laden

  Alt 16. Nov 2010, 17:51
Danke!
Das hat jetzt erstmal geklappt. Jetzt hab ich aber ein anderes Problem:
Ich will das Bild auf einem DBCtrlGrid anzeigen. Dort werden gleichzeitig 3 Datensätze angezeigt
Wie bekomm ich es hin, dass beim Start bei allen das richige Bild angezeigt wird?
Bisher hab ich die Bilder in DataSource DataSetChange Event geladen. Aber dann stimmt erst alles wenn ich alle Datensätze durchgeklickt habe.
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#7

AW: JPEG in TImage laden

  Alt 16. Nov 2010, 17:53
Verwende TDBImage Btw.: Eigentlich gilt ja: "Neue Frage, neuer Thread"
Markus Kinzler
  Mit Zitat antworten Zitat
ilse2005

Registriert seit: 15. Nov 2010
8 Beiträge
 
#8

AW: JPEG in TImage laden

  Alt 16. Nov 2010, 18:35
das ist ja das Problem. Wie ich gelesen habe kann TdbImage keine jpeg Dateien laden. Hab das auch versucht aber scheint wirklich nicht zu funktionieren.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:04 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz