Hi,
Ich hab einen dynamischen array:
var eingabe: array of array of extended;
Den ich mit dieser procedure fülle:
Delphi-Quellcode:
procedure TFunktionsgraph.ZeichnenClick(Sender: TObject);
begin
try k:= k+1;
if LBGezeichneteFunktionen.Items.Count = 0 then
laenge:= 1
else
laenge:= LBGezeichneteFunktionen.Items.Count;
SetLength(eingabe,4,laenge);
eingabe[0,k]:= StrToFloat(Ea0.Text);
eingabe[1,k]:= StrToFloat(Ea1.Text);
eingabe[2,k]:= StrToFloat(Ea2.Text);
eingabe[3,k]:= StrToFloat(Ea3.Text);
Schaubild_Zeichnen;
except
end;
end;
(k wird bei OnFormCreate der Wert -1 zugewießen)
Ich habe eine Listbox angelegt wo er mir alle Gezeichneten Schaubilder auflistet. Jetzt möchte ich einzelen Funktionen aus der Listbox und somit aus dem array löschen.
Das mach ich mit dieser procedure:
Delphi-Quellcode:
procedure TFunktionsgraph.BBEintragLoeschenClick(Sender: TObject);
var g,c: integer;
begin
for c:= LBGezeichneteFunktionen.Items.Count-1 downto 0 do
begin
if LBGezeichneteFunktionen.Selected[c] then
begin
LBGezeichneteFunktionen.Items.Delete[c];
for g:= c to k do
begin
eingabe[0,g]:= eingabe[0,g+1];
eingabe[1,g]:= eingabe[1,g+1];
eingabe[2,g]:= eingabe[2,g+1];
eingabe[3,g]:= eingabe[3,g+1];
end;
SetLength(eingabe,4,laenge-1);
Schaubild_Zeichnen;
end;
end;
end;
Ich bekomm aber jedesmal wenn ich einen Eintrag löschen will einen Application.Run error oder es kommt eine Fehlermeldung die mir sagt das der Listindex das Maximum überschreitet.
Weiß jemand wo da der Fehler liegt?