我有一个名为 MediaPlayer1 的 TMediaPlayer,然后打开一个文件(一首歌曲)播放它。现在我的问题是我需要重复这首歌直到程序停止。
这个想法是表单激活,然后重复指定的歌曲,直到表单关闭。
MediaPlayer1.Filename := 'filename';
然后它打开它
MediaPlayer1.Open;
然后它播放它
MediaPlayer1.Play;
所以现在这首歌正在播放,但是当它结束时,我希望它再次播放(重复),然后再播放一次,直到表单关闭。
我尝试了大卫赫弗南所说的,但它不起作用,我想我做错了什么,有人可以纠正我。
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, MPlayer, StdCtrls;
type
TForm1 = class(TForm)
MediaPlayer1: TMediaPlayer;
Label1: TLabel;
procedure FormActivate(Sender: TObject);
procedure MediaPlayer1Notify(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.FormActivate(Sender: TObject);
begin
mediaplayer1.FileName:='E:\it project\mario.mid';
mediaplayer1.Open;
mediaplayer1.AutoRewind:=true;
mediaplayer1.Play;
mediaplayer1.Notify:=true;
end;
procedure TForm1.MediaPlayer1Notify(Sender: TObject);
begin
if MediaPlayer1.NotifyValue=nvSuccessful then begin
MediaPlayer1.Play;
MediaPlayer1.Notify := True;
end;
end;
end.