![]() |
Timages löschen.
Wie kann man dynamisch erstellte images löschen?
ich hab
Delphi-Quellcode:
for i:=1 to anzahl do
bild[i].free krieg aber damit immer ein laufzeitfehler. ich will alle bilder einfach vom form löschen, dass ich sie im nächsten zyklus wieder erstellen kann. MFG |
Re: Timages löschen.
Hallo :hi:,
vesuch mal
Delphi-Quellcode:
MfG
for i := 0 to anzahl - 1 do
bild[i].free freak |
Re: Timages löschen.
ich krieg ketzt zwar keine fehlermeldung mehr aber
die bilder verschwinden nicht vom form. hab folgende prozedur:
Delphi-Quellcode:
procedure cleanup;
var i : integer; begin for i:=0 to st-1 do begin form1.bild[i].free; end; end; |
Re: Timages löschen.
Hallo :hi:,
kannst du vielleicht mal posten, wie du deine bilder erstellst?
Delphi-Quellcode:
MfG
Bild: Array[0..10] of TImage;
procedure TForm1.Button1Click(Sender: TObject); var i: Integer; begin Image1.Free; for i := 0 to 10 do Bild[i].Free; end; procedure TForm1.FormCreate(Sender: TObject); var i: Integer; begin for i := 0 to 10 do begin Bild[i] := TImage.Create(Form1); Bild[i].Parent := Form1; Bild[i].Left := i*50; Bild[i].Top := 10; Bild[i].Picture := Image1.Picture; end; end; freak |
Re: Timages löschen.
Delphi-Quellcode:
cleanup ruf ich dann von einer anderen prozedur auf.
while (p<>nil) do
begin s:=stacktostring(p,i); pfad:=s; form1.kortn[i]:= TImage.Create(form1); with form1.kortn[i] do begin Parent:=form1; Left:=100+(i*30); Top:=300; Width:=75; Height:=130; Picture.LoadFromFile('C:\'+pfad+'.JPG'); knr:=strtoint(s); Tag:=knr; proportional:=true; onClick:=form1.myonclick; end; p:=p^.next; i:=i+1; end; .... procedure cleanup; var i : integer; begin for i:=0 to st-1 do begin form1.kortn[i].free; end; end; |
Re: Timages löschen.
Servus,
muss das nicht
Delphi-Quellcode:
heißen?
for i:=st-1 downto 0 do
bild[i].free |
Re: Timages löschen.
Wo wird Cleanup aufgerufen?
Wenn es nur darum geht bei Programmende die Komponenten abzuraeumen, so erledigt das Delphi automatisch. Dafuer ist der bei TImage.Create angegebene Owner zustaendig. |
Re: Timages löschen.
Also bei mir geht es wunderbaer. Ein Beispiel:
Delphi-Quellcode:
var
Form1: TForm1; img:TImage; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); begin if Assigned(img) then FreeAndNil(img) else begin img := TImage.Create(nil); with img do begin Visible := False; Parent := Self; Picture.LoadFromFile('c:\test1.bmp'); AutoSize := True; Top := 100; Left := 100; Visible := true; end; end; end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:49 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