Hallo, ich habe erst angefangen, mit Delphi zu programmieren. Auf Ihrer Seite habe ich schon einige Tipps gefunden. Nun habe ich ein Problem mit einer Listbox. Ich will der Reihe nach alle Einträge aus der Listbox einlesen, aber dabei erhalte ich "Der Index der Liste überschreitet das Maximum". Wo liegt der Fehler ?
Antwort: Der Listbox-Index beginnt bei null. Das bedeutet, die Laufvariable (normalerweise i) darf die Gesamtanzahl der Einträge in der Listbox nicht überschreiten und ist um eine Ganzzahl kleiner als listbox.items.count, was bedeutet. Demzufolge ist ein Quellcode mit der Vorgabe
for i:=0 to listbox1.items.count do .....
immer fehlerhaft. Korrekt muß die Zeile lauten
for i:=0 to listbox1.items.count -1 do ....
denn dann wird
meintext := listbox1.items.strings[i];
keinen Fehler mehr verursachen. Da der erste Eintrag der Listbox1 den Index 0 hat, kann man die Laufvariable i nur bei 1 starten lassen, wenn man den Wert des listbox.items per listbox.items.strings[i-1] zuweist.