MediaPlayer(50分)

  • 主题发起人 主题发起人 zyljj
  • 开始时间 开始时间
Z

zyljj

Unregistered / Unconfirmed
GUEST, unregistred user!
我想用MediaPlayer播放一系列 wav 文件,要求 第一个 wav 完全
播放完毕后,再播放第二个,。。。,如此类推,如何实现。
 
1. 把一系列文件名保存在一个数组里.
2. 设置mediaplayer.notify := true;
3. 写mediaplayer.OnNotify实践.
with mediaplayerdo

begin

close;
inc(n);
if n <= high(filenamearray)
filename := filenamearray[n];
notify := true;
open;
play;
end;

 
if mediaplay.state = msStop and mediaplayer.length := mediaplayer.position then

begin

//play next;
end;

可能代码有错误,大致是如此
 
同意Another_eYes的意见
 
也可将所有的wav文件放于同一目录下,用findFirst、FindNext查找*.wav文件,
将找到的文件或用数组或直接播放均可。
 
对,winamp的playlist就和jams说的类似.
 
我赞成Another_eYes的观点
 
我也用ANOTHER—EYES的方法解决此问题的,还可以
 
Another_eYes,有问题!
...
if n <= high(filenamearray)
filename := filenamearray[n];
...
你的if后面竟然没有then
!呵呵,疏忽啦.
当然,这个方法不错,我就有这个方法实现过类似的功能(循环播放)
 
可是,如何得到,一系列文件的文件名呢???
本人初学,实在不知其详。请多指教。
 
if mediaplayer1.position=mediaplayer1.length then

if fileexist(opendialog1.files[i+1]) then

begin

mediaplayer1.filename:=opendialog1.files[i+1];
open;play;
end;

大概如此,总之就是用fileexist,和opendialog1.files.....我自
已编的播放器就是这么干的。一切OK!
 
时间太久,强制结束。 wjiachun
 

Similar threads

回复
0
查看
586
不得闲
回复
0
查看
504
万一
回复
0
查看
1K
不得闲
后退
顶部