Index eines Elements herausfinden

Liebes Forum,

kennt jemand eine Methode, den Index, also die Position innerhalb der Playlist, eines Elements (beispielsweise des nächsten Fixtime-Elements) herauszubekommen?

Benötigte Grüße

TSD

Wenn du schon eine Referenz auf das Element (IPlaylistItem-Interface) hast, dann kannst du einfach CurrentPlaylist.IndexOf(<item>) werwenden.

Weiterhin gibt es noch ein GetNextIndex, das liefert den Index des ersten noch ungespielten Elements zurück.

Für alles andere wirst du dir eine Schleife bauen müssen. Tipp: BeginRead/EndRead verwenden (bzw. BeginUpdate/EndUpdate falls du Änderungen vornehmen willst), damit sperrst du die Playlist für Bearbeitungen durch andere Threads während deiner Schleife.

var
  i: integer;

begin
  CurrentPlaylist.BeginRead;
  try
    for i := 0 to CurrentPlaylist.GetCount -1 do begin
      // irgendwas mit CurrentPlaylist.GetItem(i) machen
    end;
  finally
    CurrentPlaylist.EndRead;
  end;
end;
1 Like

Danke Dir! :slightly_smiling_face:

Gelöste Grüße

TSD

1 Like