mediaplay控件播放AVI文件时,怎么会先要闪一下屏呀? ( 积分: 100 )

  • 主题发起人 主题发起人 linbo
  • 开始时间 开始时间
L

linbo

Unregistered / Unconfirmed
GUEST, unregistred user!
mediaplay控件播放AVI文件时,怎么会先要闪一下屏呀?
只有一个窗体,代码如下
if Opendialog1.Execute then

begin

Mediaplayer1.FileName := Opendialog1.FileName;
Mediaplayer1.Open;
Mediaplayer1.DisplayRect := Panel2.clientrect;
Mediaplayer1.Play;
end;
 
mediaplay控件播放AVI文件时,怎么会先要闪一下屏呀?
只有一个窗体,代码如下
if Opendialog1.Execute then

begin

Mediaplayer1.FileName := Opendialog1.FileName;
Mediaplayer1.Open;
Mediaplayer1.DisplayRect := Panel2.clientrect;
Mediaplayer1.Play;
end;
 
if Opendialog1.Execute then

begin

Mediaplayer1.DisplayRect := Panel2.clientrect;
Mediaplayer1.FileName := Opendialog1.FileName;
Mediaplayer1.Open;

Mediaplayer1.Play;
end;


这样试试..不知可不可以的啊..

试下改成下面这样的

Mediaplayer1.FileName := '160.avi';
Mediaplayer1.Open;
Mediaplayer1.Display := Panel2;
Mediaplayer1.Play;
 
这样不行呀,先要OPEN才能设置他的Mediaplayer1.DisplayRect
 
procedure TForm1.Button1Click(Sender: TObject);
begin

Mediaplayer1.Display := Panel2;
Mediaplayer1.FileName := '160.avi';
Mediaplayer1.Open;
Mediaplayer1.Play;
end;
 
兄弟伙,你哪样还是不行,AVI就不会占满整个PANEL了
 
procedure TForm1.Button1Click(Sender: TObject);
begin

Mediaplayer1.Display := Panel2;
Mediaplayer1.FileName := '160.avi';
Mediaplayer1.Open;
Mediaplayer1.DisplayRect := Panel2.clientrect;
Mediaplayer1.Play;
end;



这样如何?我试过可以的了..
 
我用的是WINDOWS自带的CLOCK.AVI
我怀疑是Mediaplay.disprcet还未刷新完,就已经播放了,所以才造成闪屏现象。
我这个程序有时会,有时不会闪屏
 
一位高人的回答


--------------以下转自网络
http://www.delphibbs.com/delphibbs/dispq.asp?LID=263581

你该知道DDraw的页面切换技术!

将两个 MediaPlayer1和MediaPlayer2分别指向Panel1和Panel2。
将Panel1和Panel2重叠

// 首先
begin

Panel1.Visible:=True;
Panel2.Visible:=False;
MediaPlayer1.Play;
MediaPlayer2.Open;
end;


// MediaPlayer1播放结束
begin

Panel2.Visible:=True;
Panel1.Visible:=False;
MediaPlayer1.Stop;
MediaPlayer2.Play;
end;
 
我在MediaPlayer中播放Xvid只有声音,没有图象
 
to:xself
你的电脑要装解码软件呀
 
请问要怎么显示出这些视频文件 的时间长度?
 
后退
顶部