MSMediaPlayer 如何循环连续播放多个文件?
不是那个WindowsMediaPlayer控件,
而是MSMediaPlayer,就是从WINDOWS里导出那个..
为什么我的代码不能自动播发下一个节目,如果循环连续播放所有的节目?
procedure TMainForm.LoadAvi;var i,j:Integer; f:string;begin //讀取列表 with DataM.Q2 do begin Close; SQL.Clear; SQL.Add('Select * from Files where type=''視頻'' order by num '); Open; if RecordCount>0 then begin SetLength(ArrAvi,RecordCount); for i :=0 to RecordCount-1 do begin ArrAvi[i]:=VarToStr(FieldValues['Path'])+VarToStr(FieldValues['Filename']); next; end; end; end; //播放列表 with MSMediaPlayer1 do begin for j := 0 to high(ArrAvi) do begin Invalidate; f:=PChar(ArrAvi[j]); FileName:=PChar(ArrAvi[j]); if FileExists(FileName)=false then Exit; Play; end; end; end;case NewState of 1: beginCaption := '播放完毕';歌曲列表索引+1;得到文件名;处理播放事件;end; end;
[解决办法]
播放一个媒体完毕后,状态是1,正在播放是3,正在连接是9,暂停是2。。。
发现自己越来越语无伦次了。。。