Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Bild bei AfterScroll aktualisieren (https://www.delphipraxis.net/193987-bild-bei-afterscroll-aktualisieren.html)

Luca Haas 2. Okt 2017 15:16

Datenbank: MSSQL • Version: ? • Zugriff über: ADO Query

Bild bei AfterScroll aktualisieren
 
Hi Leute, ich habe einige Bilder(und andere Daten) in einer Datenbank gespeichert. Die anderen Daten stelle ich in einem DBGrid dar, und die Bilder über ein TImage.
Ein Bild lässt sich auch problemlos in das TImage laden, ich weiß nur nicht, wie ich, mein Programm, schreiben soll/kann, dass ich die Bilder über ein AfterScroll Ereignis aktualisiere.
Delphi-Quellcode:
procedure TForm1.KST_LagerbewertungQueryAfterScroll(DataSet: TDataSet);
begin
  Image1.Picture.Assign(nil);
  Image1.Picture := KST_LagerbewertungQuery.FieldByName('Bildpfad');
end;
Wenn ich es so versuche erhalte ich eine Fehlermeldung, da TPicture und TField inkompatible Typen sind.

mikhal 2. Okt 2017 15:28

AW: Bild bei AfterScroll aktualisieren
 
Schau die das mal an: Blobs auslesen.

Ist recht alt, funktioniert aber immer noch. Ersetze TTable durch TAdoQuery, dann sollte es funktionieren.

Grüße
Mikhal

Luca Haas 2. Okt 2017 15:33

AW: Bild bei AfterScroll aktualisieren
 
Danke schonmal dir Mikhal,

aber dabei bekomme ich die Fehlermeldung "Ungültige Typumwandlung", für die zweite Zeile.

Gruß Luca

Uwe Raabe 2. Okt 2017 15:33

AW: Bild bei AfterScroll aktualisieren
 
Was ist Bildpfad denn für ein Datentyp? Ist da wirklich das Bild drin oder steht da nur der Pfad zur Bilddatei?

Luca Haas 2. Okt 2017 15:35

AW: Bild bei AfterScroll aktualisieren
 
In Bildpfad steht nur der Pfad zur Bilddatei.

mikhal 2. Okt 2017 15:39

AW: Bild bei AfterScroll aktualisieren
 
Okay, das habe ich dann wohl falsch interpretiert. In meiner Routine wird ein Large Binary Object (BLOB) direkt an TImage übergeben, du willst aber scheinbar ein Bild aus einem Dateipfad laden. Sorry, das passt nicht.

Hier wäre wohl folgendes sinnvoller:
Delphi-Quellcode:
  Image1.Picture.Bitmap.LoadFromFile(KST_LagerbewertungQuery.FieldByName('Bildpfad').AsString); // BMP laden...

Grüße
Mikhal

Luca Haas 2. Okt 2017 15:42

AW: Bild bei AfterScroll aktualisieren
 
Okay, danke schön
So klappt es.:thumb:

mikhal 2. Okt 2017 15:44

AW: Bild bei AfterScroll aktualisieren
 
Ja, aber nur für Bitmaps = .bmp

JPEg musst du anders angehen...

Grüße
Mikhal

Uwe Raabe 2. Okt 2017 15:47

AW: Bild bei AfterScroll aktualisieren
 
Lass das Bitmap weg, dann erkennt er auch andere Bildformate, so die denn auch registriert sind.

Delphi-Quellcode:
  Image1.Picture.LoadFromFile(KST_LagerbewertungQuery.FieldByName('Bildpfad').AsString);

mikhal 2. Okt 2017 15:48

AW: Bild bei AfterScroll aktualisieren
 
Muss ich bei Gelegenheit mal ausprobieren, kannte ich bis jetzt auch noch nicht.

Grüße
Mikhal


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:41 Uhr.
Seite 1 von 2  1 2      

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