![]() |
Delphi-Version: 5
Alle Elemente in Frame löschen
Hey Leute,
ich hab mal wieder ein Problem. Ich möchte alle Elemente aus einem Frame löschen, das Frame beinhaltet Label und Comboboxen... Das einzige, was ich bisher gefunden habe ist:
Delphi-Quellcode:
Leider funktioniert das nur mit .Hide und nicht mit .Destroy :/
for i := 0 to Form1.Frame21.componentcount-1 do begin
if Form1.Frame21.components[i] is TComboBox then with Form1.Frame21.components[i] as TComboBox do begin hide; end ; if Form1.Frame21.components[i] is TLabel then with Form1.Frame21.components[i] as TLabel do begin hide; end ; Bei .Destroy kriege ich den Fehler, dass der Listenindex das Maximum überschreitet. Mit besten Grüßen Manu |
AW: Alle Elemente in Frame löschen
Beim Löschen die Schleife von oben nach unten ausführen, da das Löschen die Grenzen verschiebt.
Besser Free statt Destroy |
AW: Alle Elemente in Frame löschen
Delphi-Quellcode:
for i := XXX to YYY do
Die Werte für XXX und YYY werden vor dem Ausführen der Schleife ausgewertet und zwischengespeichert, damit Beim Löschen entfernst du etwas aus der Liste, womit sich alles ab dieser Stelle um 1 nach vorne verschiebt. Also das Ende YYY würde bei jedem Löschen um 1 kleiner, aber da es zuschengespeichert ist, lies du irgendwann hinter dem Ende, außerdem überspringst du Einträge, denn da der Index (i) beim Löschen weiterwandert, aber da sich alles vorgeschoben hat, wird der Eintrag nach dem Löschen übersprungen. Man kann mit einer While-Schleife arbeiten, wo die Abbruchbedingung bei jedem Durchgang ausgewertet und nicht zwischengespeichert wird. (das mit dem Überspringen mußt du da aber ebenfalls beachten) Oder man geht eben rückwärts durch die Schleifen, da sich ja nur hinten was ändert und nicht vor der jeweils aktuellen Position. |
AW: Alle Elemente in Frame löschen
Moin...
falls es noch von Relevanz ist... rufe einfach DestroyComponents deines Frames auf und schwupps ist alles leer. 8-) |
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:07 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