![]() |
Re: Problem bei for Schleife
Das Problem ist einfach, dass sich der Index der Memo.Lines ändert, sobald du eine Zeile daraus löschst.
Entweder du machst es mit downto ...
Delphi-Quellcode:
... oder einer repeat-until-Schleife
procedure TForm1.ReplaceClick(Sender: TObject);
var i: integer; begin for i := Memo1.Lines.Count - 1 downto 0 do begin try [Befehl] except Memo1.Lines.Delete(i); end; end; ReplaceClick(Self); end;
Delphi-Quellcode:
Du solltest dir auch überlegen, ob es das richtige ist, eine Exception zu werfen, wenn dein Ereignis eintritt. Warum nicht eine if-Abfrage?
procedure TForm1.ReplaceClick(Sender: TObject);
var i: integer; begin i := 0; repeat try [Befehl] except Memo1.Lines.Delete(i); i := 0; continue; // kA, ob das in nem except-Block geht end; inc (i); until i > Memo1.Lines.Count - 1; ReplaceClick(Self); end;
Delphi-Quellcode:
... oder so?
if WordFound (Memo1.Lines[i]) then
Memo1.Lines.Delete(i); |
Re: Problem bei for Schleife
Zitat:
|
Re: Problem bei for Schleife
Danke für deine Antwort... Kumpel hat mir den Weg mal so gezeigt :-P Derzeit funzt alles iweder so wie es sollte, nur bringt mein prog jetzt Fehlermeldung mit Integerüberlauf :-P
Kann mir wer mal auf meinen Weg ne verschachtelte schleife vorbauen?!? Sache: 1 Schleife (soll die anderen 2 Schleifen 2 mal wiederholen) 2 Schleife (darin sollen dann die Wörter zb. unentlich aus dem Memo mit Memo1.Lines[i] übergeben werden (da immer mal unterschiedliche viele Wörter drin stehen)) 3 Schleife (Wenn in Schleife 2 ein Error ausgelöst wird und dann der letzte Eintrag aus dem memo gelöscht wird mit Memo1.Lines.Delete(i-1) dannach soll schleife bsp x mal aktiv werden) Meine Befehle funzen ja in einzelnen Teilen, nur der Zusammenbau der Schleife macht mir grad kopfzerbrechen! Vielen Dank im Voraus für eure Hilfe *schwitz* |
Re: Problem bei for Schleife
Wird wohl keiner machen hier. Zumindest würde ich's nicht. Weil das ist ein Problem, was sich durch gründliches überdenken und nachvollziehen der Schleife lösen lassen kann. Und denkarbeit wird dir hier sicher keiner abnehmen. ;)
|
Re: Problem bei for Schleife
Problem war nur, das ich langsam an mir selber zweifle, weil schleife 100% korrekt ist, was mir auch gesagt wurde... nur kommt einen immer mal der Gedanke das man nen fasselfehler drin hat!
MFG |
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:14 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