AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi Probleme mit Trackbar/Timer bei MP3 Player
Thema durchsuchen
Ansicht
Themen-Optionen

Probleme mit Trackbar/Timer bei MP3 Player

Ein Thema von phAb · begonnen am 20. Mai 2008 · letzter Beitrag vom 20. Mai 2008
Antwort Antwort
phAb

Registriert seit: 20. Mai 2008
2 Beiträge
 
#1

Probleme mit Trackbar/Timer bei MP3 Player

  Alt 20. Mai 2008, 16:02
Hallo liebe Programmierfreunde

Ich beschäftige mich seit einigen Tagen mit Delphi und bastel an einem MP3 Player rum.
Seit ich mich an die Trackbar gewagt habe und mit OpenDialog rumexperimentiert habe klappt nichtsmehr so richtig :\
Ich kann mit dem Button "Hinzufügen" zwar MP3s laden und abspielen, aber der "Stop" Button klappt nichtmehr. Auch mein Timer für die Trackbar habe ich ausgeschaltet, weil die Trackbar beim Starten ans Ende springt und ich ein Fehlermeldung (irgendwas mit MCI-Gerät) erhalte.
Also hier der Quellcode (nicht lachen plz, bin erst seit 2 tagen dran ):

Code:
unit mp3;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ComCtrls, StdCtrls, MPlayer, ExtCtrls;

type
  TForm1 = class(TForm)
    Button1: TButton;
    Button2: TButton;
    Button3: TButton;
    Button4: TButton;
    TrackBar1: TTrackBar;
    MediaPlayer1: TMediaPlayer;
    Timer1: TTimer;
    ListBox1: TListBox;
    Button5: TButton;
    OpenDialog1: TOpenDialog;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Timer1Timer(Sender: TObject);
    procedure Button5Click(Sender: TObject);
    procedure TrackBar1Change(Sender: TObject);
  private

  public
    var running:boolean;
   end;
var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin

if Button1.Caption='Play' then
  if running=true then
    begin
    Mediaplayer1.Resume;
    Button1.caption:='Pause';
    end
  else
    begin
    Mediaplayer1.Open;
    Mediaplayer1.Play;
    Button1.caption:='Pause';
    running:=true;
    end
else
  begin
  Mediaplayer1.Pause;
  Button1.caption:='Play';
  end;


end;

procedure TForm1.Button2Click(Sender: TObject);
begin
Mediaplayer1.stop;
end;



procedure TForm1.Button5Click(Sender: TObject);
begin
Opendialog1.execute;
Mediaplayer1.Filename:=Opendialog1.FileName;
Mediaplayer1.Open;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
Trackbar1.Position:=Mediaplayer1.Position;
end;

procedure TForm1.TrackBar1Change(Sender: TObject);
begin
Trackbar1.Max:=Mediaplayer1.TrackLength[0];
end;

end.

mfg phAb

EDIT: Naja, wie gesagt, der Timer spinnt, also klappt auch die Trackbar nich Naja und mein Stop-Button (Button2) klappt aufeinmal nicht mehr
  Mit Zitat antworten Zitat
angos

Registriert seit: 26. Mai 2004
Ort: Rheine
549 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Blutiger MP3-Player Anfänger

  Alt 20. Mai 2008, 16:07
Hi,

und herzlich willkommen in der
und was genau möchtest du jetzt wissen?


gruß
angos
Ansgar
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#3

Re: Blutiger MP3-Player Anfänger

  Alt 20. Mai 2008, 16:08
Hallo phAb Herzlich Willkommen in der DP

könntest du dem Beitrag bitte einen aussagekräftigen Titel geben der dein Problem ansatzweise beschreibt? Klicke dazu einfach über dem Beitrag auf
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
bluesbear

Registriert seit: 14. Dez 2005
Ort: Hahnstätten
355 Beiträge
 
Delphi 2007 Enterprise
 
#4

Re: Probleme mit Trackbar/Timer bei MP3 Player

  Alt 20. Mai 2008, 16:34
Hallo phAb,
guck doch mal in der Hilfe, wann das OnChange Ereignis eines TTrackbar aufgerufen wird. Ich rate jetzt mal, daß da der Hund begraben liegt. Auf welches Zeitintervall hast du denn den Timer eingestellt?
Klaus M. Hoffmann
  Mit Zitat antworten Zitat
Benutzerbild von Neutral General
Neutral General

Registriert seit: 16. Jan 2004
Ort: Bendorf
5.219 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#5

Re: Probleme mit Trackbar/Timer bei MP3 Player

  Alt 20. Mai 2008, 16:54
Hi,

Du musst es so machen:

Delphi-Quellcode:
procedure TForm1.Timer1Timer(Sender: TObject);
begin
  TrackBar1.OnChange := nil;
  Trackbar1.Position := Mediaplayer1.Position;
  TrackBar1.OnChange := Trackbar1.Change;
end;
, da sonst bei der Zuweisung der Position das Trackbar OnChange aufgerufen wird, was das chaos anrichtet

Gruß
Neutral General
Michael
"Programmers talk about software development on weekends, vacations, and over meals not because they lack imagination,
but because their imagination reveals worlds that others cannot see."
  Mit Zitat antworten Zitat
phAb

Registriert seit: 20. Mai 2008
2 Beiträge
 
#6

Re: Probleme mit Trackbar/Timer bei MP3 Player

  Alt 20. Mai 2008, 19:18
danke für die flotte hilfe neutral general

meine trackbar läuft soweit, und meine listbox nimmt sogar mehrere items auf
aber schon häng ich wieder fest:
ich versuche grade makierte Items abzuspielen.
naja, mein erster einfall war den quellcode von meinem playbutton zu ändern.

Code:
procedure TForm1.Button1Click(Sender: TObject);
var pos:integer;
begin

if Button1.Caption='Play' then
  if running=true then
    begin
    Mediaplayer1.Resume;
    Button1.caption:='Pause';
    end
  else
    begin
    pos:=Listbox1.ItemIndex;
    Mediaplayer1.FileName:=Listbox1.Items[pos];
    Mediaplayer1.Open;
    Mediaplayer1.Play;
    Button1.caption:='Pause';
    running:=true;
    end
else
  begin
  Mediaplayer1.Pause;
  Button1.caption:='Play';
  end;


end;
Problem is das es nich klaptt^^ Also es wird immernoch das lied abgespielt was per opendialog ausgewählt wurden.
Ich weiß ich bin ziemlich unkreativ und was besseres fällt mir nich ein. Hab auch in der Hilfe über Listbox.Items nachgelesen, hat mir aber nich wirklich geholfen

mfg pHAB
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:54 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz