![]() |
Array of tbitmap
Hallo,
Ich möchte ein array of tbitmap als record abspeichern und wieder laden. Das funktioniert jedoch nicht. Ich fürchte ich hab irgendetwas durcheinander gebracht. Kann mir jemand helfen? Fehlermeldung gibt's keine alles läuft problemlos, nur ist das Bitmap, nach dem laden, leer.
Delphi-Quellcode:
Grüsse und vielen Dank!
Tbitmap_rec=record
bm:array[1..186] of tbitmap; end; ..... procedure Tmain.Button1Click(Sender: TObject); var n:integer;f:file of tbitmap; begin for n:= 1 to 186 do begin bmr.bm[n]:=tbitmap.create; bmr.bm[n].Width:=22; bmr.bm[n].Height:=22; bmr.bm[n].LoadFromFile('D:\test.bmp'); end; assignfile(f,'c:\test.bmr'); rewrite(f); write(f,bmr); closefile(f); image1.Picture.Bitmap.Assign(bmr.bm[1]); end; procedure Tmain.Button2Click(Sender: TObject); var n:integer;f:file of tbitmap; begin for n:= 1 to 186 do begin bmr.bm[n]:=tbitmap.create; bmr.bm[n].Width:=22; bmr.bm[n].Height:=22; end; assignfile(f,'c:\test.bmr'); reset(f); read(f,bmr); closefile(f); image1.Picture.Bitmap.Assign(bmr.bm[1]); end; |
Re: Array of tbitmap
Guten Morgen,
in Deinem Array befinden sich nur die Zeiger/Adressen zum Bitmap. Du speicherst also "nur" die Adressen, diese sind aber wenn Du sie aus einer Datei liest wertlos. Es kann ja sein das dieser Speicher schon für etwas anderes benutzt wird - dann kracht es. Vielleicht versuchst Du mal die Inhalte der Bitmaps in ein TFileStream zu speichern. Grüße Klaus |
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:08 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