Habe das einfach mal aus dem Bauch heraus geschrieben, ohne Test !!!
Probier's aus.
Delphi-Quellcode:
procedure TForm1.OnTimer(Sender:TObject); // 1000 millisec ist ok!
begin
if NextTrack then
begin
MediaPlayer.stop;
playMP3Sound;
end;
end;
function TForm1.NextTrack : Boolean;
begin
With MediaPlayer Do
result:= Position >= Length
{verwende, den ">=" Operator und versichere Dich, dass das
automatische Zurückspulen beim Ende eines Files auf FALSE steht !!! }
end;
procedure TForm1.playMP3Sound;
var Song: integer;
begin
Song:=random(3)+1; // 1, 2 oder 3 !!!
MediaPlayer1.FileName:=(PChar(ExtractFilePath(Application.ExeName)+ 'MP3\Sound'+IntToStr(Song)+'.mp3'));
MediaPlayer1.Open;
MediaPlayer1.Play;
end;