Ver Mensaje Individual
  #9  
Antiguo 12-05-2006
Acanol Acanol is offline
Miembro
 
Registrado: abr 2006
Ubicación: Elche
Posts: 75
Reputación: 19
Acanol Va por buen camino
Buenas, mira esto es lo que he sacado asi rapidamente ya que no puedo entrenerme mas, si no te sirve le vuelvo a echar un vistazo, pero intenta adaptarlo. El siguiente codigo reproduce un sonido, cuando se termina, lo vuelve a reproducir, esta el boton stop que para la reproducción. Cuando hagas el formulario e insertes el tmediaplayer, enlazale el sonido que quieres reproducir desde el principio, aunque te he puesto un commondialog para que puedas elegir el sonido que quieras, bueno echale un vistazo y me dices algo.

Código Delphi [-]
unit unit1;
interface
uses
 Windows, mmsystem, ExtCtrls, Dialogs, StdCtrls, ComCtrls, Controls,
 MPlayer, Classes, Forms, SysUtils;
type
 TForm1 = class(TForm)
   MediaPlayer1: TMediaPlayer;
    btnStop: TButton;
    Button4: TButton;
    btnNext: TButton;
    Timer1: TTimer;
    btnOpenFile: TButton;
    btnPlay: TButton;
    OpenDialog1: TOpenDialog;
   procedure btnOpenFileClick(Sender: TObject);
   procedure FormDestroy(Sender: TObject);
   procedure btnPlayClick(Sender: TObject);
   procedure Timer1Timer(Sender: TObject);
   procedure FormCreate(Sender: TObject);
   procedure btnStopClick(Sender: TObject);
   procedure btnNextClick(Sender: TObject);
   procedure Button4Click(Sender: TObject);
    procedure MediaPlayer1Notify(Sender: TObject);
 private
   { Private declarations }
 public
   { Public declarations }
 end;
var
 Form1: TForm1;
VarTime, VarRem: String;
 SetNewPos: Boolean;
 trk: integer;
 min:extended;
 sec:integer;
 const
  ModeStr: array[TMPModes] of string = ('Not ready', 'Stopped', 'Playing', 'Recording', 'Seeking', 'Paused', 'Open');
implementation
{$R *.DFM}
procedure TForm1.btnOpenFileClick(Sender: TObject);
begin
   if OpenDialog1.Execute then begin
       MediaPlayer1.Close;
       MediaPlayer1.FileName := OpenDialog1.FileName;
       MediaPlayer1.Open;
   end;
end;

procedure TForm1.FormDestroy(Sender: TObject);
begin
   MediaPlayer1.Close;
end;
procedure TForm1.btnPlayClick(Sender: TObject);
begin
MediaPlayer1.Open;
MediaPlayer1.Play;
Timer1.Enabled := True;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
   if MediaPlayer1.Mode = mpStopped then
     BEGIN
      mediaplayer1.Play;
     END;
      end;
procedure TForm1.FormCreate(Sender: TObject);
begin
   SetNewPos := False;
end;
procedure TForm1.btnStopClick(Sender: TObject);
begin
   If MediaPlayer1.Mode <> mpStopped then
       MediaPlayer1.Stop;
end;

procedure TForm1.btnNextClick(Sender: TObject);
begin
   btnPlay.Click;
end;
procedure TForm1.Button4Click(Sender: TObject);
begin
   btnPlay.Click;
end;
procedure TForm1.MediaPlayer1Notify(Sender: TObject);
Begin
  with Sender as TMediaPlayer do
  begin
    Form1.Caption := ModeStr[Mode];
    Notify := True;
    end;
    if MediaPlayer1.Mode = mpStopped then
     BEGIN
      mediaplayer1.Play;
     END;

end;

end.
__________________
{Saludos.}

//Todos los dias se aprende algo nuevo, por que no enseñar nosotros?
Responder Con Cita