IVideoWindow::p ut_FullScreenMode 方法 (control.h)
[与此页面关联的功能 DirectShow 是旧版功能。 它已被 MediaPlayer、 IMFMediaEngine 和 Media Foundation 中的音频/视频捕获所取代。 这些功能已针对Windows 10和Windows 11进行了优化。 Microsoft 强烈建议新代码尽可能在 Media Foundation 中使用 MediaPlayer、 IMFMediaEngine 和 音频/视频捕获 ,而不是 DirectShow。 如果可能,Microsoft 建议重写使用旧 API 的现有代码以使用新 API。]
方法 put_FullScreenMode
启用或禁用全屏视频呈现。
语法
HRESULT put_FullScreenMode(
[in] long FullScreenMode
);
参数
[in] FullScreenMode
指定是启用或禁用全屏模式的布尔值。 必须是以下值之一:
值 | 说明 |
---|---|
OATRUE | 切换到全屏模式。 |
OAFALSE | 禁用全屏模式。 (默认。) |
返回值
可能的返回值包括:
返回代码 | 说明 |
---|---|
|
筛选器不支持全屏模式。 |
|
已处于请求的模式。 |
|
成功。 |
|
找不到任何支持全屏模式的筛选器。 |
备注
根据视频呈现器的不同,在应用程序运行或暂停图形之前,切换到全屏模式可能不可见。 在全屏模式下,如果用户 ((例如,使用 Alt + TAB) )离开应用程序,则 Filter Graph 管理器将发送 EC_FULLSCREEN_LOST 事件。
以下说明介绍了 Filter Graph 管理器如何实现全屏模式。 应用程序开发人员可能会忽略此信息,但如果你正在编写自定义视频呈现器,它可能会很有用。
当应用程序切换到全屏模式时,筛选器图形管理器会搜索运行效率最高的视频呈现器。 按优先顺序排列::
- 筛选器图中本机支持全屏模式的任何视频呈现器。
- 筛选器图中的任何视频呈现器都可以将视频拉伸到全屏,而不会产生巨大的性能成本。
- 全屏呈现器筛选器。
- 筛选器图中支持 IVideoWindow 的任何视频呈现器。
对于第二个选项,筛选器图形管理器在图形中的每个视频呈现器上调用 IVideoWindow::GetMaxIdealImageSize 和 GetMinIdealImageSize 。 如果显示器的大小在筛选器的报告范围内,则表示筛选器可以拉伸视频,而不会产生巨大的性能成本。
要求
最低受支持的客户端 | Windows 2000 Professional [仅限桌面应用] |
最低受支持的服务器 | Windows 2000 Server [仅限桌面应用] |
目标平台 | Windows |
标头 | control.h (包括 Dshow.h) |
Library | Strmiids.lib |