Windows media player控件第二次播放时无法全屏

新建MFC工程,插入windows media player control,属性设置fullscreen为true,设置好URL参数。

添加CWMPPlayer4,CWMPControls3类。

控件绑定关联变量CWMPPlayer4 m_player并设CWMPControls3 m_control = m_player.get_controls();

为了达到循环播放的目的,响应PlayStateChange消息,消息处理函数中是如下两句:

m_control.play();

m_player.put_fullScreen(1);

此时调试工程,发现只有第一次全屏,第二次之后的都不能全屏,m_player.put_fullScreen(1);这句根本没起作用。

网上基本是把这句话用moveWindow()或者setWindowPos()替代,但是那样子做首先界面没有原装的全屏好看,而且会有屏闪,特别是放在平板上使用时。

第二次之后不能全屏的根本原因是因为控件把url的媒体第一次播放完后,因为播放列表没有后续内容了,就只有停止,此时m_player.play()响应停止状态再播放就被当成了第二个实例,windows media player 无法保持两个实例都是fullscreen。

我们可以在PlayStateChange的响应函数中加如下代码保证第一个实例不停止,不生成第二个实例:

if (NewState == 8){

m_player.put_URL(_T("C:\\Users\\Administrator\\Desktop\\TEST_TOOL\\Video\\MID1080P.avi"));

}

时间: 2024-10-13 04:59:00

Windows media player控件第二次播放时无法全屏的相关文章

winform播放视频(windows media player)

1.找到windows media player 工具箱常规下边右键,右键弹窗点击“选择项”,选择工具箱窗口点击“COM组件”,找到 Windows Media Player 勾选,点击确定 2.使用windows media player 直接将windows media player控件拖动到窗体上, 3.属性 (1)fullScreen:满屏 (2)enableContextMenu:是否显示右键菜单 (3)stretchToFit :非全屏状态时是否伸展到最佳大小 (4)uMode: 播

使用Window 自带的控件 axWindowsMediaPlayer 制作播放器

首先,需要把Medio Player 控件添加到工具箱中,具体操作如下: 在VS编程环境的"工具箱"中单击右键,选择"选择项"菜单,打开"选择工具箱项"窗口,选择"COM组件"标签,在列表中找到并勾选"Windows Media Player"组件,单击"确定"按钮.将该组件添加到指定的工具箱选项卡中然后在工具箱里面找 Windows Media Player 控件,拉到form里面,拉

Java通过Ole调用Windows Media Player,部分控件属性调用方法

其实Java并不擅长做这类开发和研究,尤其是媒体影音是Java的弱项.但是为了项目,只能丧心病狂了. 起初在网络上找到了一个可行的调用类,并有一个调用实例,相信有过这方面经验都有下载过,文件名就叫WMP.但是这个还不能满足我现在做的这个项目的功能需求,里面缺少很多官方文档的空间属性方法,其中就包含我需要的. 最开始的解决方法是在网络上载找找看,希望能找到完整的类包,但是相关的资源都是大家炒来炒去,都一样,没有带来什么帮助,久寻未果就放弃了. 其后有看到c++调用Windows Media Pla

Winform Windows Media Player 简易播放器

新手上路,高手勿进! 窗体设计: 实现效果: 实现代码: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using System.Data.SqlClient; using Sy

windows media player 播放视频

一.新建windows应用程序项目,添加vedioForm窗体 二.在com组件中找到windows media player,添加引用 三.代码如下: 1 public partial class VedioForm : Form 2 { 3 private AxWMPLib.AxWindowsMediaPlayer axWindowsMediaPlayer1; 4 public VedioForm() 5 { 6 InitializeComponent(); 7 InitVedio(); 8

背水一战 Windows 10 (59) - 控件(媒体类): Image, MediaElement

原文:背水一战 Windows 10 (59) - 控件(媒体类): Image, MediaElement [源码下载] 作者:webabcd 介绍背水一战 Windows 10 之 控件(媒体类) Image MediaElement 示例1.Image 的示例 1Controls/MediaControl/ImageDemo1.xaml <Page x:Class="Windows10.Controls.MediaControl.ImageDemo1" xmlns=&quo

Windows Media Player 打不开怎么办

1. 右键VS工具箱的空白处; 2. 打开工具箱, 选择com组件→找到windows media player 3. 如果这里没有发现 windows Media Player怎么办? , 以win10为例说明, 打开小娜搜一搜, 4. 双击后发现打不开? 打开控制面板→程序→启动或关闭windows功能→把下图的两个√去掉 5. 然后必须重启计算机, 重启后, 再到那里把两个√给勾上, 然后确定, 他会自动安装; 6. 安装完成后, 就会在com组件中发现windows media play

背水一战 Windows 10 (36) - 控件(弹出类): ToolTip, Popup, PopupMenu

原文:背水一战 Windows 10 (36) - 控件(弹出类): ToolTip, Popup, PopupMenu [源码下载] 作者:webabcd 介绍背水一战 Windows 10 之 控件(弹出类) ToolTip Popup PopupMenu 示例1.ToolTip 的示例Controls/FlyoutControl/ToolTipDemo.xaml <Page x:Class="Windows10.Controls.FlyoutControl.ToolTipDemo&q

背水一战 Windows 10 (28) - 控件(文本类): TextBox, PasswordBox

原文:背水一战 Windows 10 (28) - 控件(文本类): TextBox, PasswordBox [源码下载] 作者:webabcd 介绍背水一战 Windows 10 之 控件(文本类) TextBox PasswordBox 示例1.TextBox 的示例 1Controls/TextControl/TextBoxDemo1.xaml <Page x:Class="Windows10.Controls.TextControl.TextBoxDemo1" xmln