irgendwie stimmt dein Schleifenaufbau nicht und deine Einrückungen dienen nicht wirklich der Übersicht
,
Delphi-Quellcode:
for x := Form1.meineListe.count - 1 downto 0 do
begin
...
for y := 0 to 36 do
begin
[b]MySeries:= TLineseries.Create( Self );;////Dies wurde Hinzugefügt
MySeries.ParentChart:= Chart1;;////Dies wurde Hinzugefügt[/b]
with Chart1.SeriesList[ y ] do
AddXY( i,Counter[y] );
end;
end;
end;
in jedem y-Durchlauf wird ein Lineseries erstellt und das ganze x-mal (äußere Schleife).
ungetestet:
Delphi-Quellcode:
If ComboBox1.ItemIndex = 0 Then
begin
for y := 0 to 36 do
begin
Counter[y] := 0;
MySeries:= TLineseries.Create( Self );
MySeries.ParentChart:= Chart1;
end;
for x := Form1.meineListe.count - 1 downto 0 do
begin
z:=StrToInt(Form1.meineListe.Strings[x]);
i:=Form1.meineListe.count-x;
for y := 0 to 36 do
begin
if (z in Form1.werte[y]) then Counter[y] := 0
else Inc(Counter[y]);
Chart1.SeriesList[y].AddXY( i,Counter[y] );
end;
end;
end;
Du könntest dir noch überlegen, ob du die x und y-Schleife drehst, somit könntest du dir die obere schleife sparen. Geschwindigkeitsmäßig bremst dich dann aber das strtoint aus, aber das gibts auch Mittel und Wege.
Mfg Frank