![]() |
Problem mit FindComponent
Hallo
zu diesem Thema gibt es bereits einige Threads, leider bin ich mit den Tips nicht zu einem Ergebnis gekommen. :wall: Mein Problem: einige Labels und Edits werden dynamisch erstellt und gefüllt, klappt alles wie vorgesehen. Die Anzeige soll dann mit anderen Parametern neu aufbegaut werden. Erstellen der Kompos
Delphi-Quellcode:
Für das Löschen hab ich folgendes probiert:
Sorte := TLabel.Create(F_Lagerplatz);
Sorte.parent := self; Sorte.name := 'Sorte'+inttostr(Lauf); // Lauf : integer; Variante 1 findet nichts
Delphi-Quellcode:
Variante 2 gibt Zugriffsverletzung
for i := 0 to maxitems do
begin TS := 'Sorte'+inttostr(i); TLabel(FindComponent(TS)).free; end;
Delphi-Quellcode:
Sieht irgendjemand meinen Fehler ?
for i := 0 to maxitems do
begin TS := 'Sorte'+inttostr(i); TLabel(F_Lagerplatz.FindComponent(TS)).free; end; |
Re: Problem mit FindComponent
Hallo,
ich hoffe doch, dass F_Lagerplatz das Formular ist. Sonst müsste es nämlich F_Lagerplatz.FindComponent lauten. |
Re: Problem mit FindComponent
Ich würds über ne ObjectList machen :
Delphi-Quellcode:
uses Contnrs; // <<-- nicht vergessen !!!
var Form1: TForm1; liste : TObjectList; implementation {$R *.dfm} procedure TForm1.FormCreate(Sender: TObject); var MyLabel : TLabel; t : integer; begin liste := TObjectList.Create; Liste.OwnsObjects := true; for t := 0 to 50 do begin Mylabel := TLabel.Create(form1); MyLabel.Top := t * 16; MyLabel.Name := 'Label' + inttostr(t); MyLabel.Parent := Form1; Liste.Add(MyLabel); end; end; procedure TForm1.BitBtn1Click(Sender: TObject); begin Liste.Clear; // <<-- hier löscht die Liste alle Labels und gibt sie frei. end; procedure TForm1.FormDestroy(Sender: TObject); begin Liste.free; end; |
Re: Problem mit FindComponent
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo,
hier ein kleines Beispiel zu meiner obigen Antwort. |
Re: Problem mit FindComponent
@Jens : F_Lagerplatz ist die Form, Dein Beispiel werde ich runterladen und testen.
@nightshade : Dein Tip klappt ! Danke für die schnelle Hilfe :hello: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:29 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