Entwickler-Ecke

Multimedia / Grafik - play button im mediaplayer macht nicht was er soll^^


Gohac - Do 30.06.11 21:47
Titel: play button im mediaplayer macht nicht was er soll^^
hallo zusammen,

ich probiere mich ein bissel im Delphi und hab mir als anfang mal ein mp3 player erstellt.
lief auch soweit ganz gut verstehen tue ich zwar noch nicht alles aber es kommt mit der zeit ;).
mein player hat 2 forms einer ist der player selbst die andere form ist die playlist.
Soweit gut nur der play button macht mir problemme, bei mir ist play und pause button ein und der selbe nur wenn ich auf play drücke dann passiert nix. Ich muss mit dem button "ein lied vorspringen" und dann spielt er erst ab. Kann dann auch pause drücken aber dann wenn ich die pause wieder aufheben will spielt er nicht weiter.
Habe auch schon versucht das ich den play button ein opendialg zuweisse aber das geht irgendwie auch nicht.

Habe schon 2 tage gegoogelt aber nichts hilfreiches gefunden, nun hoffe ich ihr könnt mir helfen.
also ich will das wenn ich auf play drücke er das erste lied aus der playliste abspielt und wenn kein lied in der playliste eingetragen ist das er den opendialog öffnet.

Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
procedure TForm1.Button1Click(Sender: TObject);
begin
 MediaPlayer1.Play;
 MediaPlayer1.Pause;
 Timer1.Enabled:=true;
 Progressbar1.Max:=Mediaplayer1.Length;
end;

edit: ich weis nun woran es liegt das er keine lied aus der playlist nimmt da ihm keine zugewissen ist nur die umsetzung fehlt mir eben bissel schwer^^

Moderiert von user profile iconNarses: Delphi-Tags hinzugefügt


Jann1k - Do 30.06.11 21:58

Ist der Code den du gepostet hast, dein Play-Button? Wenn ja, ist es gar nicht verwunderlich, dass du nicht viel mitbekommst wenn du


Delphi-Quelltext
1:
2:
MediaPlayer1.Play;
MediaPlayer1.Pause;


direkt hintereinander ausführst.


Gohac - Do 30.06.11 22:10

ja das ist der code vom play/pause button

ok bin von ausgegangen das das so gehen könnte. Ich fange doch auch gerade erst an mit Delphi :)

Das hat soweit auch hingehaun nur er hat kein play gemacht (dachte das liegt daran das er nicht weis was und von wo er abspielen soll)


jaenicke - Do 30.06.11 22:49

Naja, denke einmal an einen normalen MP3-Player:
Was wird wohl passieren, wenn du direkt hintereinander Play und Pause drückst? :zwinker:

Du willst doch nur entweder Play oder Pause ausführen, aber nicht beides hintereinander. ;-)


Gohac - Fr 01.07.11 08:35

und wie kann ich das nun machen ? wie gesagt hab schon gegoogelt aber leider nichts gefunden.
habt ihr vieleiht noch seiten wo das beschreiben wird? oder könnt mir jemand hier im forum helfen ?


Jann1k - Fr 01.07.11 08:45

Naja, zum abspielen rufst du


Delphi-Quelltext
1:
MediaPlayer1.Play;                    


auf und zum pausieren


Delphi-Quelltext
1:
MediaPlayer1.Pause;                    


soll die Pause aufgehoben werden brauchst du wiederum


Delphi-Quelltext
1:
MediaPlayer1.Play;                    



Oder hast du Probleme damit den richtigen Song zu finden oder sonstiges?


Gohac - Fr 01.07.11 08:52


Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
procedure TForm1.Button1Click(Sender: TObject);
begin
 MediaPlayer1.Play;
 MediaPlayer1.Pause;
 MediaPlayer1.Play;
 Timer1.Enabled:=true;
 Progressbar1.Max:=Mediaplayer1.Length;
 end;


so hab ich es jetzt mal gemacht er spielt zwar nun ein lied aus der playlist ab, aber pause und dann wieder play geht nicht.


jaenicke - Fr 01.07.11 09:22

Du rufst die Befehle einfach direkt hintereinander im Abstand von Mikrosekunden auf. Wie stellst du dir das vor? :gruebel:

Du musst einen der beiden Befehle aufrufen, je nachdem was der Button gerade machen soll. Wenn der Mode des Mediaplayers mpPlaying ist, solltest du z.B. pausieren, sonst abspielen...


Gohac - Sa 09.07.11 16:09

habe es nun etwas anderes umgebaut und nun geht alles

Danke

Thread kann gelöscht/geschlossen werden