![]() |
Exception bei Freigabe (Android+iOS)
Hallo,
hab ein Problem bei der Objektfreigabe auf mobilen Platformen (Delphi 12). Wenn ich in einem (dynamischen) Array visuelle Komponenten freigeben will, bekomme ich "manchmal" eine Exception (welche ich auch nicht abfangen kann). Auf Android weniger oft wie auf iOS. Hat jemand eine Idee? Hier mein Code:
Code:
var ar: Array of TRectangle;
procedure TForm1.Aufbau(Sender: TObject); var i, anz, newanz: Integer; r: TRectangle; begin try anz := Length(ar); newanz := Random(50) + 1; if (newanz < anz) then begin for i := anz downto newanz + 1 do begin ar[i - 1].Free; // Hier Exception!? end; SetLength(ar, newanz); end else if (newanz > anz) then begin SetLength(ar, newanz); for i := anz + 1 to newanz do begin r := TRectangle.Create(GridLayout1); r.Parent := GridLayout1; r.OnClick := Aufbau; ar[i - 1] := r; end; end; for i := 0 to newanz - 1 do begin ar[i].Fill.Color := $FF000000 + Random($FFFFFF); end; except on E: Exception do // wird nicht aufgerufen! end; end; |
AW: Exception bei Freigabe (Android+iOS)
Schau Dir mal diese beiden Blogs an
![]() Vielleicht hilft es, den Teil in try-except in eine eigene Funktion zu verbauen und/oder dort ein doppeltes try-except vorzusehen. Damit sollte zumindest die exception "fangbar" werden. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:12 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-2025 by Thomas Breitkreuz