Autor Beitrag
knittel
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 71
Erhaltene Danke: 2

Win XP, Win7, openSUSE
Delphi 7
BeitragVerfasst: Sa 20.08.11 14:52 
Hallo Allerseits,
Ich will bei meinem Programm Hintergrund Musik laufen lassen, welche sind über eine CheckBox an und ausschalten lässt.
Das hab ich auch geschafft, allerdings nur mit einem Lied. Das Problem ist ich will mehrere Lieder in den TMediaPlayer einfügen und er soll immer ein zufälliges davon abspielen, wenn er mit einem Lied fertig ist.
Dafür könnte ich eure Hilfe gebrauchen, bisher sieht mein Code so aus:

Das wird in der FormCreate aufgerufen
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
procedure TSoundManager.Start();
begin
// Songpath
Songpath := 'Music\';

// Add Song To the List
Songname := 'Main.wav';
with Form1.MediaPlayer1 do
  begin
  FileName := Songpath + Songname;
  Open;
  EndPos := TrackLength[1];
  end;
CurrentSongTime := Form1.MediaPlayer1.TrackLength[1];
end;


Das wird in der Idle Procedure meines Programms aufgerufen.
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
procedure TSoundManager.PlayBackgroundMusic();
begin
if not(ContinuePlayMusic) then // ContinuePlayMusic verändert sich je nach der CheckBox.
  begin
  if CurrentSongTime > 0 then
    begin
    CurrentSongTime := 0;
    Form1.MediaPlayer1.Stop;
    end;
  end
else
  begin
  if (CurrentSongTime > Form1.MediaPlayer1.TrackLength[1]) or (CurrentSongTime = 0then
    begin
    Form1.MediaPlayer1.Previous;
    CurrentSongTime := 0;
    Form1.MediaPlayer1.Play;
    end;
  CurrentSongTime := CurrentSongTime + Performance.Timegap;
  // CurrentSongTime entspricht der vergangen Zeit in ms, da der 
  // MediaPlayer bei TrackLength diese auch in ms angibt.
  end;
end;


Vielen Dank im voraus.

_________________
"Wir können nicht fliehen!" "Wieso nicht?" "Sie haben mir die Schnürsenkel zusammengebunden!" "Die Schweine."
FrEaKY
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 235


D7
BeitragVerfasst: Sa 20.08.11 20:14 
Ich schätze mal das musst du selber machen, mit einer Listbox, Stringlist, was auch immer.
Gausi
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 8535
Erhaltene Danke: 473

Windows 7, Windows 10
D7 PE, Delphi XE3 Prof, Delphi 10.3 CE
BeitragVerfasst: Di 23.08.11 09:30 
Schau dir mal den Mediaplayer für Dummies an. Da wird erklärt, wie man den Mediaplayer mit einer Playlist verwendet. :D

_________________
We are, we were and will not be.
knittel Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 71
Erhaltene Danke: 2

Win XP, Win7, openSUSE
Delphi 7
BeitragVerfasst: Mo 05.09.11 14:24 
Vielen Dank, das Tutorial hat mir gut geholfen. :)

_________________
"Wir können nicht fliehen!" "Wieso nicht?" "Sie haben mir die Schnürsenkel zusammengebunden!" "Die Schweine."