![]() |
Datenbank: dBase • Zugriff über: BDE
Bild-Pfad in Datenbank
Hallo,
ich versuche in der Datenbank im DBEditFeld nur den Pfad für die Bild-Datei zu speichern. Das Bild soll auch immer zu dem jeweiligen Datensatz angezeigt werden. Mit: TForm1.DBEdit1Change(Image1.Picture.LoadFromFile(D BEdit1.Text) Für Datensätze, die schon in der Datenbank sind, funktioniert es auch. Wenn ich aber einen neuen Datensatz eingeben will, erhalte ich die Fehlermeldung (EInvalidGraphic) Wie kann ich diesen Fehler umgehen? |
Re: Bild-Pfad in Datenbank
Das Laden des Bildes würde ich im Ereignis OnChange() der DataSource machen - und vielleicht auch nur dann, wenn ein Datensatzwechsel erfolgt:
Delphi-Quellcode:
Grüße vom marabu
procedure TDemoForm.DataSourceDataChange(Sender: TObject; Field: TField);
begin if not Assigned(Field) then Image1.Picture.LoadFromFile(DBEdit1.Text); end; |
Re: Bild-Pfad in Datenbank
Ergibt leider auch das gleiche Problem wie:
procedure TForm1.DBEdit6Change(Sender: TObject); begin Image1.Picture.LoadFromFile(DBEdit6.Text); end; Wenn ich nur durch die Datenbank blättere, funktioniert alles Bestens. Sobald ich aber den Edit-Button des Navigators anklicke,um einen neuen Datensatz einzugeben, erhalte ich eine Exception der Klasse EinvaliGraphic "Unbekannte Bilddateierweiterung(.)" Ist eigendlich logisch, da das Programm versucht eine Bilddatei aus dem Editfeld zu laden. Das Feld aber leer ist. Wie kann ich es bewerkstelligen, das ONCHANGE nur ausgeführt wird, wenn im DBEDIT-Feld auch ein Pfad vorhanden ist? |
Re: Bild-Pfad in Datenbank
Delphi-Quellcode:
procedure TForm1.DBEdit6Change(Sender: TObject);
begin // Nur wenn Datei vorhanden... if FileExists(DBEdit1.Text) then Image1.Picture.LoadFromFile(DBEdit6.Text) end; |
Re: Bild-Pfad in Datenbank
:cheers: Vielen Dank, hat super funktioniert.
Danke schön! |
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:28 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 by Thomas Breitkreuz