Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Schleife neu beginnen (https://www.delphipraxis.net/160171-schleife-neu-beginnen.html)

Array 30. Apr 2011 18:29


Schleife neu beginnen
 
Hallo Leute!

Gibt es eine Möglichkeit eine Schleife nach dem Sie beendet ist nochmals zu starten und die die Zahl des Arrays Mannschaften[] um eins zu erhöhen?

Bitte um eure Hilfe.

LG Array

Aphton 30. Apr 2011 18:37

AW: Schleife neu beginnen
 
Jupp, mithilfer von
Hier im Forum suchenVerschachtelte Schleifen
Hier im Forum suchenSetLength
Hier im Forum suchenLength

Satty67 30. Apr 2011 18:40

AW: Schleife neu beginnen
 
Nur den Index für Manschaften oder Zahl allgemein?

Delphi-Quellcode:
for ManschaftsZahl := Zahl to Zahl+1 do
begin
  [...]
  While (Gegner[Zahl] = 1)
        or (lv_ergebnisse.items[I].subitems[0] = Mannschaften[ManschaftsZahl])
  [...]
end;
Wobei ich die While-Schleife in eine Subfunction ausgelagern würde und als Parameter lv_ergebnisse.items[I], Zahl und evtl. Manschaftszahl übergeben würde.

€: Wobei ich gerade sehe, das die While-Schleife klein ist... seltsame Einrückung

Array 30. Apr 2011 18:45

AW: Schleife neu beginnen
 
Es geht darum, dass die Mannschaften im ersten Abschnitt nicht variabel sind, und jetzt möchte ich es eben variabel haben, also nicht Mannschaften[1] sondern Mannschaften[I] nur die Schleife muss vorher fertig sein, weil das ganze soll x-mal mit Mannschaft [1] passieren und dann x-mal mit Mannschaft[2] usw.

sx2008 30. Apr 2011 18:49

AW: Schleife neu beginnen
 
Tipp: du brauchst eine Prozedur, die auf einen Rutsch einen weiteres Spielergebnis
an die Listview hängt:
Delphi-Quellcode:
procedure TForm1.AddSpielErgebnis(const heim, gegner:string; heimtore,gegnertore:integer);
var
  li : TListItem;
begin
  li := lv_ergebnisse.Items.add;

  // Spielnummer wird automatisch ermittelt, könnte aber auch durch einen Parameter
  // übergeben werden
  li.Caption := IntToStr(lv_ergebnisse.Items.Count); // Spielnummer
  li.SubItems.Add(heim);
  li.SubItems.Add(gegner);
  li.SubItems.Add(IntToStr(heimtore));
  li.SubItems.Add(IntToStr(gegnertore));
end;

Array 30. Apr 2011 19:01

AW: Schleife neu beginnen
 
Könntest du mir deine Idee noch ein bisschen genauer erklären...bitte

Array 30. Apr 2011 19:05

AW: Schleife neu beginnen
 
Habs geschafft...das mit der zweiten Prozedur war eine gute Idee...danke nochmals...


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:39 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz