Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Problem mit Datenbank und Bildern (https://www.delphipraxis.net/36338-problem-mit-datenbank-und-bildern.html)

ANeuby 18. Dez 2004 16:20


Problem mit Datenbank und Bildern
 
Hi Jungs,
also ich hab eine Paradox Datenbank und füge so ein Bild ein:

Delphi-Quellcode:
if OpenPictureDialog1.Execute then begin
path := ExtractFilePath(Application.ExeName) + 'pics\' + '_' + DBEdit1.Text + '_' + ExtractFileName(OpenPictureDialog1.FileName);
p1 := '.\pics\' + '_' + DBEdit1.Text + '_' + ExtractFileName(OpenPictureDialog1.FileName);
Image1.Picture.LoadFromFile(OpenPictureDialog1.FileName);
CopyFile(PChar(OpenPictureDialog1.FileName), PChar(path), false);
DBEdit4.Text := p1;
end;
Also als erstes klickt man auf das + bei der Navi. Komponente und dann gibt man die Daten ein.
Dann auf Bild laden und dann wird dieser Code (s.o.) ausgelöst. Dabei wird das Bild in den Unterordner pics des Programmverz. kopiert. In p1 steht das gleiche wie in path bis das am Anfang halt nicht der komplette Pfad des pics Ordner steht. Dadurch will ich es erzielen, dass wenn man Bilder in der DB hat und das Proggi auf anderen PCs startet die Bilder auch gefunden werden.

Das funzt ja auch alles schön und gut.

Nur wenn ich jetzt ein Bild hinzufüge, ist es auch in der Db. Aber es wird nicht angezeigt, bzw. meine Meldung kommt das er das Bild angeblich nicht finden kann. Ich muss mein Proggi erst beenden und wieder starten dann klappt alles ganz normal.

Woran könnte das liegen bzw. es muss ja wohl an dem Code oben liegen :wall:

Danke im Voraus.

Albi 18. Dez 2004 16:45

Re: Problem mit Datenbank und Bildern
 
Hallo,

Was für Komponenten verwendest Du. Ne Query oder Table? Dann sollte ein Close --> Open oder Refresh dein Problem lösen.

ANeuby 18. Dez 2004 16:48

Re: Problem mit Datenbank und Bildern
 
Ich verwende Table.

Kannst du mal sagen wie ich ein Refresh durchführe bzw den Code ?
Denn wenn ich im Programm auf Refresh klicke in der Navi gehts auch nicht.

ANeuby 18. Dez 2004 18:52

Re: Problem mit Datenbank und Bildern
 
hat denn keiner eine Lösung ?
ich habs mehrmal versucht es geht nichts.

ANeuby 18. Dez 2004 19:13

Re: Problem mit Datenbank und Bildern
 
so hier jetzt nochmal der Code womit bei dem wechseln der Datensatz das Bild geholt wird:

Delphi-Quellcode:
begin
if Length(DBEdit5.Text) > 0 then
if FileExists(DBEdit5.Text) then previewbox.Picture.LoadFromFile(DBEdit5.Text)
else
previewbox.Picture.LoadFromFile(ExtractFilePath(Application.ExeName) + 'nopic.jpg');

end;
So jetzt habe ich mit Messageboxen mal alles ausgegebn nach jeder Aktion und bemerkte folgendes:
Das Bild wir richtig kopiert. Danach wird es auch richtig angezeigt in der previewbox bzw. Image1.
(hab das nur gerade umbenannt)
So wenn man dann auf das Häckchen klickt um den Datensatz zu holen, dachte ich das er irgendwie den falschen String in DBEdit5 schreibt bzw. oben DBEdit4. Aber das ist auch ok er hat den richtigen String.

So wenn die Quelldatei unter C:\bilder\hallo.jpg liegt und der Bildtitel im programm z.B. tt ist, dann wird das Bild den Unterornder pics kopiert und als tt_hallo.jpg gespeichert.

JETZT DER FEHLER !!!
Wenn das Bild nach klick aufs Häckchen geladen werden soll passiert folgendes: Anstatt das die Image Komponente folgendes macht:

Delphi-Quellcode:
previewbox.Picture.LoadFromFile(DBEdit5.Text)
wo in DBEdit5 auch richtig steht .\pics\tt_hallo.jpg versucht er das Bild aus dem Quellordner zu laden:
C:\bilder\tt_hallo.jpg und das gibt es ja natürlich nicht.

Wo liegt der Fehler ?

Danke für Hilfe im Voraus.


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