用mediaplayer控件播放视频时,默认播放窗体的全屏。 (50分)

  • 主题发起人 stephenhu
  • 开始时间
S

stephenhu

Unregistered / Unconfirmed
GUEST, unregistred user!
delphi6中用mediaplayer控件播放视频时,
默认的视频播放窗体的全屏功能被屏避,怎样使它恢复全屏功能呢?
 
这个问题怎麽就都没人回答了,难道都是菜鸟吗?头痛啊。
 
视频播放窗体的全屏功能被屏避 是什么意思?
你是说 Mediaplayer控件?
 
说清楚些,你这样我们很难回答的
 
是的,我说的是mediaplayer控件。
非常对不起,我以为都会明白。
用mediaplayer控件播放视频。
 
在mediaplayer控件中没有直接设置全屏的属性,你可以把用来显示图像的panel设置成
client方式,然后将窗体的borderstyle 设置成none,最后在运行的时候将窗体的默认模式
设置成全屏就可以了。
当然,你要记的设置MEDIAPLAYER的DisplayRect=panel.ClientRect.
这样就可以了
 
to hzynet:
你说的是对的,但我不想用自己设置的窗口(form2) 来播放,我还是想用默认
播放窗口,因为这样可以不要对播放的媒体进行判断(判断是音频还是视频,音频
不要显示 form2,视频要显示form2),这样可以避免很多麻烦。

我想用findwindow得到默认播放窗口的句柄,再sendmessage强行使它最大化,
但我不知具体该怎样做。请高手帮助。
 
看一下我这段代码:
procedure TForm1.Button1Click(Sender: TObject);
var
hwnd1: hwnd;
begin

hwnd1:=findwindow('form1',nil);
showwindow(hwnd1,sw_showmaximized)
end;

我想通过这段代码使form1最大化显示,编译能够通过,但却不能使
form1全屏,api 参数应该没有错吧,不知道这是为什摸。假如这段
代码能实现 form1全屏的话,那麽问题就好解决了。

 
这个问题看来比较麻烦,我在csdn里面也找不到答案,唯一得到肯定的一点是用directx
可一解决这个问题。但是直接利用 mediaplayer控件能否解决了,我还是想大家多来
讨论一下。
 
DX不能控制默认窗口吧,我看发送消息还比较可行,需要捕获播放窗口的弹出,
再取得柄,再发消息,晕了,其实自己写播放窗口更方便,不觉得吗?你可以获
得对窗口的完全控制,编写更复杂的特殊处理
 
多人接受答案了。
 
顶部