Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Jpg aus DB wird nicht aktualisiert (https://www.delphipraxis.net/155403-jpg-aus-db-wird-nicht-aktualisiert.html)

Kralle 21. Okt 2010 17:26

Datenbank: MyBase • Version: 1 • Zugriff über: Local

Jpg aus DB wird nicht aktualisiert
 
Moin,

da bin ich schon wieder.

Delphi-Quellcode:
procedure TDataModule1.DataSource1DataChange(Sender: TObject; Field: TField);
begin
if FileExists(DataModule1.DataSource1.DataSet.FieldbyName('FotoNord').AsString) then
  Hauptformular.Hauptfenster.Image1.Picture.LoadFromFile(DataModule1.DataSource1.DataSet.FieldbyName('FotoNord').AsString);
else
 //Bild löschen

 // Bild neu zeichnen
  Hauptformular.Hauptfenster.image1.Refresh;
end;
Bleibt das letzte Bild der Spalte "FotoNord" angezeigt. Auch wenn ich einen neuen Datensatz erstelle und dort kein Bildernamen eintrage.
Irgendwie sehe ich grade keinen Weg wie ich das Bild löschen kann, ausser ein leeres Bild zuzuweisen.
Geht das auch anders?

Gruß Heiko

Bummi 21. Okt 2010 17:33

AW: Jpg aus DB wird nicht aktualisiert
 
else Image1.Picture := nil

Kralle 21. Okt 2010 17:55

AW: Jpg aus DB wird nicht aktualisiert
 
Hallo Bummi,

Zitat:

Zitat von Bummi (Beitrag 1057000)
else Image1.Picture := nil

Aua. An dieses "nil" denke ich immer wieder mal nicht.
Danke.

Gruß Heiko

shmia 21. Okt 2010 18:00

AW: Jpg aus DB wird nicht aktualisiert
 
Das .Refresh kannst du Dir sparen, dass macht die Image Komponente automatisch.

Und ausserdem:
Delphi-Quellcode:
procedure TDataModule1.DataSource1DataChange(Sender: TObject; Field: TField);
begin
  if FileExists(DataModule1.DataSource1.DataSet.FieldbyName('FotoNord').AsString) then
                ^^^^^^^^^^^^  <==== weglassen !

  // so ist es besser
  if FileExists(DataSource1.DataSet.FieldbyName('FotoNord').AsString) then
Wenn du innerhalb der Klasse TDataModule1 bist, dann darfst du nicht über die Variable DataModule1 zugreifen.
Das ist eine ganz böse Falle und wurde schon häufig hier im Forum diskutiert.

Kralle 21. Okt 2010 19:11

AW: Jpg aus DB wird nicht aktualisiert
 
Moin,

[QUOTE=shmia;1057005]Das .Refresh kannst du Dir sparen, dass macht die Image Komponente automatisch.
Okay, das wusste ich nicht.

Zitat:

Wenn du innerhalb der Klasse TDataModule1 bist, dann darfst du nicht über die Variable DataModule1 zugreifen.
Das ist eine ganz böse Falle und wurde schon häufig hier im Forum diskutiert.
Ist schon wieder raus. War noch ein Kopierfehler.

MfG
Heiko


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:44 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