![]() |
Letztes TabSheet(PageControl) bleibt beim löschen stehen !
Moinsen....
ich habe folgendes Problem: Ich habe ein PageControl auf dem ich zur Laufzeit TTabsheets mit jeweils einem Memo erzeuge. Nun will ich alle löschen und bis auf das letzte werden auch alle gelöscht ! Aber warum das letzte nicht ? Mit dieser Schleife habe ich es probiert :
Delphi-Quellcode:
In freudiger Erwartung auf Kommentare...
for i:=0 to PageControl1.PageCount do begin
NewMemo[i].Free; Pagecontrol1.Pages[i].Free; end; Teclis :bouncing4: [edit=Daniel B]Delphi-Tags korrigiert. Mfg, Daniel B[/edit] |
Re: Letztes TabSheet(PageControl) bleibt beim löschen stehen
Auf jeden Fall muss es Pagecount-1 heissen, da Pages ein 0-basiertes Array ist und
somit von 0 bis Pagecount-1 indiziert werden kann. |
Re: Letztes TabSheet(PageControl) bleibt beim löschen stehen
Hai Teclis,
ich habe zum Test mal diesen Code geschrieben: ![]()
Delphi-Quellcode:
Er macht das ohne Probleme.
var
MyMemos : Array [0..10] Of TMemo; MyPages : Array [0..10] Of TTabSheet; procedure TForm1.Button1Click(Sender: TObject); var ndx : Integer; begin for ndx := 0 to 10 do begin MyPages[ndx] := TTabSheet.Create(self); MyPages[ndx].PageControl := PageControl1; MyMemos[ndx] := TMemo.Create(self); MyMemos[ndx].Parent := MyPages[ndx]; MyMemos[ndx].Visible := True; MyMemos[ndx].Align := alClient; end; end; procedure TForm1.Button2Click(Sender: TObject); var ndx : Integer; begin for ndx :=0 to PageControl1.PageCount-1 do begin MyMemos[ndx].Free; MyPages[ndx].Free; end; end; |
Re: Letztes TabSheet(PageControl) bleibt beim löschen stehen
Und hier mein Vorschlag:
Code:
Das hatten wir schon oft, beim Löschen aus Listen müssen diese RÜCKWÄRTS durchlaufen werden, da sich während des Löschens der Index der folgenden Seiten ändert ;-)
[color=#f50000]for i:=Pred(PageControl1.PageCount) downto 0 [/color]do begin
NewMemo[i].Free; Pagecontrol1.Pages[i].Free; end; ...:cat:... |
Re: Letztes TabSheet(PageControl) bleibt beim löschen stehen
Hallo Zusammen...
danke ....jetzt funzt es !!! :mrgreen: Thx for help, Teclis :bouncing4: |
Re: Letztes TabSheet(PageControl) bleibt beim löschen stehen
Zitat:
Er greift ja über den Seitenindex zu und nicht über sein Array. Habe ich total überlesen :oops: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:27 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