Entwickler-Ecke
WinForms - IndexOutOfRangeException Problem :-S
MiLaIm - Fr 08.06.07 16:03
Titel: IndexOutOfRangeException Problem :-S
Hallo erstmal,
also ich hab mit c# angefangen und hab da ein problem, und zwar:
ein kleines lotto programm hab ich gemacht, wenn ich es laufen lasse klappt alles, bis auf den Button , der die Zahlen generieren soll. (also läuft da eigentlich garnichts).
ERstmal hab ichs ohne arrays gemacht aber ich möchts mit arrays machen und deswegen bräuchte ich bisschen hilfe.
hier der SC:
C#-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16:
| private void btnGenerate_Click_1(object sender, EventArgs e) { int i, GesamtZahlen = 6 ; int[] Lotto; Lotto = new int[6]; System.Random rand; rand = new System.Random(); for (i = 0; i < GesamtZahlen; i++) { Lotto[i] = rand.Next(49) + 1; } txtAnzeige.Text = Lotto[i].ToString() + " "; } |
Also, so hab ichs mir vorgestellt.
Jetzt, wenn der IndexOutOfRangeException fehler kommt, zeigts auf
txtAnzeige.Text = Lotto[i].ToString() + " ";
Also, hoffe hab euch nicht verwirrt. Danke im voraus für die Hilfe.
Christian S. - Fr 08.06.07 16:15
Hallo und :welcome:
Die Zeile steht außerhalb der Schleife. Nach Beendigung der Schleife hat i den Wert 6 und das ist dann außerhalb der Grenzen Deines Arrays.
JüTho - Fr 08.06.07 17:13
Christian hat recht.
Außerdem wird in diesem Fall
nur eine Zahl, nämlich die i-te, in die TextBox aufgenommen. Ich schlage deshalb vor, was Du vermutlich wolltest:
C#-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10:
| txtAnzeige.Text = ""; for (i = 0; i < GesamtZahlen; i++) { Lotto[i] = rand.Next(49) + 1; txtAnzeige.AppendText(Lotto[i].ToString() + " "); } |
Ich warne Dich aber: String-Verknüpfung ist die schlechteste Methode und gerade mal in einer solchen Situation hinzunehmen. Grundsätzlich sind
StringBuilder für die Verknüpfung von Strings zu verwenden; und für TextBoxen gibt es eben
AppendText().
Gruß Jürgen
MiLaIm - Fr 08.06.07 20:13
Hallo Jürgen, hallo Christian.
Ich bedanke mich seeeeeeeeeeeeehr bei euch.
Ihr habt mir echt sehr geholfen :-)
Das freut mich, echt. ich hab mir so den kopf drüber gemacht. hehe
Ihr seit ja echt cool
Respecttt
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!