Einzelnen Beitrag anzeigen

Benutzerbild von mcmichael
mcmichael

Registriert seit: 5. Jun 2008
Ort: Bremen
79 Beiträge
 
Delphi 10.1 Berlin Professional
 
#4

AW: Bilddateien auf Vorrat laden für spätere Darstellung in TBitmap

  Alt 14. Sep 2019, 20:10

Zitat:
Müsste es nicht
z:=1;

heissen innerhalb des Vergleichs?
Danke für den Tipp!!!
mein :=0 war Quatsch, :=1 wäre auch falsch, aber :=i wäre es gewesen.
Und dann läuft auch (ein bißchen) was.

Beim Einlesen von jpg Dateien (trotz "uses jpeg") kommt nämlich die Meldung "Bitmap ist ungültig"
Das TImage liest jpg immer klaglos ein. Wie gehe ich denn da vor?

TObjectDictionary<string,TBitmap> kannte ich noch nicht, scheint aber einen Blick wert - Danke!

procedure preloadImage(fname:string);
var i,z:integer;
begin
if preload then
begin
//doubletten vermeiden
z:=0;
for i := 1 to icmax do
if icname[i]=fname then
begin
z:=i;
break;
end;
if z=0 then
begin
inc(icmax);
IC[icmax]:=TBitmap.Create;
IC[icmax].LoadFromFile(fname);
icname[icmax]:=fname;
end;
end;
end;


procedure showImage(t:TImage;fname:string);
var i,z:integer;
begin
if preload then
begin
z:=0;
for i := 1 to icmax do
if icname[i]=fname then
begin
z:=i;
break;
end;
if z>0 then
t.Picture.Bitmap.Assign(IC[z]);
end
else
begin
//kein preload - Direkt anzeigen
end;
end;
  Mit Zitat antworten Zitat