Sag mal, onkeldave, Dir haben mehrere hier gesagt, das hier:
Delphi-Quellcode:
procedure TForm1.ListBox1Click(Sender: TObject);
var i : integer;
begin
for i := 0 to listbox1.Count do
if listbox1.Selected[i] then
begin
{ nun haben wir in i die nummer der selektierten Zeile
da Listbox und Playlist eine identische Reihe der Einträge und gleiche Sortierung
vorweisen, können wir mit dem erhaltenen index den richtigen Eintrag der Playlist
auslesen. }
PlayFile(i);
break;
end;
zu hoch gezählt wird. Das mit der -1 solltest Du deshalb besser dringend beachten.
for i := 0 to listbox1.Count - 1 do
Wenn die Listbox 8 Einträge hat, werden die von 0 bis 7 gezählt. Listbox.Count hat aber den Wert 8 und überschreite somit das Maximum.
Damit der Topf nicht explodiert, lässt man es ab und zu mal zischen.