AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi TStringList: "Listen Index überschreitet das Maximum 0"
Thema durchsuchen
Ansicht
Themen-Optionen

TStringList: "Listen Index überschreitet das Maximum 0"

Ein Thema von Spiderpig_GER_15 · begonnen am 18. Mai 2008 · letzter Beitrag vom 18. Mai 2008
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von Spiderpig_GER_15
Spiderpig_GER_15

Registriert seit: 17. Mär 2008
298 Beiträge
 
Delphi 7 Personal
 
#1

TStringList: "Listen Index überschreitet das Maximum 0&

  Alt 18. Mai 2008, 19:13
Folgender Auzug erzeug den Fehler: "Listen Index überschreitet das Maximum 0"

Aber ich weiß nicht wie ich ihn beheben kann

Delphi-Quellcode:
procedure TForm1.Loadlevel;
var MapData :TStringList;
    i :integer;
    aktuell :Tstringlist;
    x1,x2,x3,x4,y1 :integer;
begin
  MapData :=TStringList.Create;
  MapData.LoadFromFile('MapData.txt');
  aktuell :=TStringlist.Create;

  for y1:=0 to MapData.Count do //ergibt 20
  begin
    x1:=1;
    x2:=2;
    x3:=3;
    x4:=4;

    for i:=0 to ((length(MapData[0])+1)div 5) do //ergibt in meinem Fall 30
    begin
      aktuell[0]:=((MapData[x1][y1])+(MapData[x2][y1])+(MapData[x3][y1])+(MapData[x4][y1])); //<= Langes
                                                                                             //ausprobieren
                                                                                             //brachte mich zu
      with TWall.Create(MySpriteEngine) do //dem Schluss das
      begin //der Fehler hier
        Image := MyImageList.Find(aktuell[0]) ; //steckt :(
        x := x1*50 ;
        y := y1*50 ;
        z := 0 ;
      end;

      x1:=x1+5;
      x2:=x2+5;
      x3:=x3+5;
      x4:=x4+5;

      aktuell.Clear;
    end;
  end;
end;
also dieser Auszug soll, wenn er ganz feritg ist, mein Level Text in Bildchen uminterpretieren.
Aber das ist unwichtig, mein Problem ist das er mir die Fehler Meldung: "Listen Index überschreitet das Maximum 0" ausspuckt.

Ich habe auch gekennzeichnet, wo ich vermute wo der Fehler erzeugt wird, nur kann ich keinen Fehler erkennen

Hoffe ihr könnt mir helfen

MfG

Spiderpig
---Zufall ist das Inkognito Gottes---
  Mit Zitat antworten Zitat
Benutzerbild von Die Muhkuh
Die Muhkuh

Registriert seit: 21. Aug 2003
7.332 Beiträge
 
Delphi 2009 Professional
 
#2

Re: TStringList: "Listen Index überschreitet das Maximu

  Alt 18. Mai 2008, 19:14
Setz mal einen absoluten Pfad
Und die Schleife muss bis Count - 1 laufen.
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.619 Beiträge
 
Delphi 12 Athens
 
#3

Re: TStringList: "Listen Index überschreitet das Maximu

  Alt 18. Mai 2008, 19:15
Versuch es mal mit aktuell.Add(...)
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.767 Beiträge
 
Delphi 10.4 Sydney
 
#4

Re: TStringList: "Listen Index überschreitet das Maximu

  Alt 18. Mai 2008, 19:16
Hallo,

schon mal versucht die Schleife
Delphi-Quellcode:
for y1:=0 to MapData.Count do //ergibt 20
  begin
    x1:=1;
    x2:=2;
    x3:=3;
    x4:=4;

    for i:=0 to ((length(MapData[0])+1)div 5) do //ergibt in meinem Fall 30
    begin
      aktuell[0]:=((MapData[x1][y1])+(MapData[x2][y1])+(MapData[x3][y1])+(MapData[x4][y1])); //<= Langes
bis MapData.count -1 laufen zu lassen?

Grüße
Klaus
Klaus
  Mit Zitat antworten Zitat
Benutzerbild von sx2008
sx2008

Registriert seit: 16. Feb 2008
Ort: Baden-Württemberg
2.332 Beiträge
 
Delphi 2007 Professional
 
#5

Re: TStringList: "Listen Index überschreitet das Maximu

  Alt 18. Mai 2008, 19:18
Delphi-Quellcode:
// Falsch !!
for y1:=0 to MapData.Count do //ergibt 20
// korrekt
for y1:=0 to MapData.Count-1 do
  Mit Zitat antworten Zitat
Benutzerbild von Spiderpig_GER_15
Spiderpig_GER_15

Registriert seit: 17. Mär 2008
298 Beiträge
 
Delphi 7 Personal
 
#6

Re: TStringList: "Listen Index überschreitet das Maximu

  Alt 18. Mai 2008, 19:18
Delphi-Quellcode:
  for y1:=0 to MapData.Count -1 do
  begin
    x1:=1;
    x2:=2;
    x3:=3;
    x4:=4;

    for i:=0 to ((length(MapData[0])+1)div 5) do
    begin
      aktuell.add((MapData[x1][y1])+(MapData[x2][y1])+(MapData[x3][y1])+(MapData[x4][y1]));

      with TWall.Create(MySpriteEngine) do
      begin
        Image := MyImageList.Find(inttostr(x1)+inttostr(x2)+inttostr(x3)+inttostr(x4)) ;
        x := x1*50;
        y := y1*50;
        z := 0 ;
      end;

      x1:=x1+5;
      x2:=x2+5;
      x3:=x3+5;
      x4:=x4+5;

      aktuell.Clear;
    end;
  end;
end;
meint ihr so?

jetzt kommt: Listenindey überschreitet das maximum 21
---Zufall ist das Inkognito Gottes---
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#7

Re: TStringList: "Listen Index überschreitet das Maximu

  Alt 18. Mai 2008, 19:24
Wie sieht den der Typ des Arrays aus?
Markus Kinzler
  Mit Zitat antworten Zitat
Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.767 Beiträge
 
Delphi 10.4 Sydney
 
#8

Re: TStringList: "Listen Index überschreitet das Maximu

  Alt 18. Mai 2008, 19:27
Ist irgendwo sichergestellt, dass
die Werte x1,x2,x3 und x4 nicht größer als
MapData.count -1 werden können?

Grüße
Klaus
Klaus
  Mit Zitat antworten Zitat
Benutzerbild von Spiderpig_GER_15
Spiderpig_GER_15

Registriert seit: 17. Mär 2008
298 Beiträge
 
Delphi 7 Personal
 
#9

Re: TStringList: "Listen Index überschreitet das Maximu

  Alt 18. Mai 2008, 19:27
hab den fehler, die frage hat sich erledigt

bei

Delphi-Quellcode:
    for i:=0 to ((length(MapData[0])+1)div 5) do
    begin
      aktuell.add((MapData[x1][y1])+(MapData[x2]y1])+(MapData[x3][y1])+(MapData[x4][y1]));
muss

Delphi-Quellcode:
    for i:=0 to ((length(MapData[0])+1)div 5) do
    begin
      aktuell.add((MapData[y1][x1])+(MapData[y1][x2])+(MapData[y1][x3])+(MapData[y1][x4]));
Ich dachte bei einer Stringlist steht in der ersten eckigen Klammer [Nr Buchstabe] und in der 2ten [nr Zeile].
Ist aber andersrum

aber ejtzt tutz

THX

Spiderpig
---Zufall ist das Inkognito Gottes---
  Mit Zitat antworten Zitat
Benutzerbild von Die Muhkuh
Die Muhkuh

Registriert seit: 21. Aug 2003
7.332 Beiträge
 
Delphi 2009 Professional
 
#10

Re: TStringList: "Listen Index überschreitet das Maximu

  Alt 18. Mai 2008, 19:48
Zitat von Spiderpig_GER_15:
aber ejtzt tutz
Ist das ein neuer Technobeat?
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:32 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