Win10系列:VC++媒体播放控制1
在MediaElement控件中定义了用于控制视频播放的函数,如Play、Pause和Stop等函数。本小节将在20.6.1小节所新建的项目基础上继续来介绍如何为视频添加播放控制,并在最后一部分给出项目的完整前台代码,读者可以参照此代码来布局前台界面。
(1)启动视频播放
首先打开MainPage.xaml文件,并在Grid元素中原有代码的基础上继续添加如下的代码:
<TextBlock x:Name="VideoState" Margin="114,13,0,0" FontSize="15" HorizontalAlignment="Left" Text="播放状态:"></TextBlock>
<Button x:Name="PlayButton" Click="PlayClick" HorizontalAlignment="Left" Margin="114,0,10,0" Content="播放" Grid.Column="0"></Button>
在上面的代码中,添加一个TextBlock控件和一个"播放"按钮,将这个TextBlock控件命名为VideoState,用于显示视频的播放状态。"播放"按钮用来播放MediaElement控件中的视频文件。
添加上述的代码以后,接下来为"播放"按钮添加单击事件处理函数PlayClick。打开MainPage.xaml.h头文件,并添加如下的代码,用来声明PlayClick函数。
private:
//播放按钮
void PlayClick(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e);
声明了PlayClick函数以后,打开MainPage.xaml.cpp源文件,添加PlayClick函数的实现代码,具体代码如下所示:
//播放按钮
void FileDemo::MainPage::PlayClick(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e)
{
//设置播放速率
Video->DefaultPlaybackRate=1.0;
//播放视频
Video->Play();
//显示播放状态
VideoState->Text="播放状态:"+Video->CurrentState.ToString();
}
在上面的代码中,MediaElement控件的DefaultPlaybackRate属性用于设置视频的播放速率,这里将此属性赋值为1.0,表示以正常的播放速率播放MediaElement控件中的视频文件。然后调用MediaElement控件的Play函数开始播放视频文件。接下来使用MediaElement控件中的CurrentState属性得到视频的播放状态,并调用ToString函数将其转换成字符串类型,显示到名为"VideoState"的TextBlock控件中。
前台界面的显示效果如图20-9所示。

图20-9播放视频
(2)暂停视频播放
下面继续添加对视频文件播放的暂停控制。首先布局前台界面,打开MainPage.xaml文件,并在Grid元素中添加一个"暂停"按钮,用于暂停视频的播放,代码如下所示:
<Button x:Name="PauseButton" Click="PauseClick" HorizontalAlignment="Left" Margin="10,0,10,0" Content="暂停" Grid.Column="1"></Button>
添加了"暂停"按钮以后,接下来为此按钮添加单击事件处理函数PauseClick。打开MainPage.xaml.h头文件,并添加如下的代码,用来声明PauseClick函数。
private:
//暂停按钮
void PauseClick(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e);
声明了PauseClick函数以后,接着打开MainPage.xaml.cpp源文件,并添加PauseClick函数的实现代码,具体代码如下所示:
//暂停按钮
void FileDemo::MainPage::PauseClick(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e)
{
//暂停正在播放的视频
Video->Pause();
VideoState->Text="播放状态:"+Video->CurrentState.ToString();
}
在PauseClick函数中调用了MediaElement控件的Pause函数,执行Pause函数时将暂停MediaElement控件中正在播放的视频。然后使用MediaElement控件中的CurrentState属性得到视频的播放状态,并调用ToString函数将其转换成字符串类型,显示到名为"VideoState"的TextBlock控件中。
添加了"暂停"按钮后,前台界面的显示效果如图20-10所示,"暂停"按钮显示在"播放"按钮之后。

图20-10暂停播放
Win10系列:VC++媒体播放控制1的更多相关文章
- Win10系列:VC++媒体播放控制4
		(7)音量控制 MediaElement控件具有一个Volume属性,通过设置此属性的值可以改变视频音量的大小.接下来介绍如何实现视频的音量控制,首先打开MainPage.xaml文件,并在Grid元 ... 
- Win10系列:VC++媒体播放控制2
		(3)停止视频播放 接下来添加对视频文件播放的停止控制,打开MainPage.xaml文件,并在Grid元素中添加一个"停止"按钮,用于停止视频的播放,代码如下所示: <Bu ... 
- Win10系列:VC++媒体播放控制3
		(5)添加视频进度条 视频进度条可以用来显示当前视频的播放进度,并可以通过拖动视频进度条来改变视频的播放进度.接下来介绍如何实现视频进度条,首先打开MainPage.xaml文件,并在Grid元素中添 ... 
- Win10系列:VC++媒体播放
		媒体播放包括视频播放和音频播放,在开发Windows应用商店应用的过程中可以使用MediaElement控件来播放视频文件和音频文件.本节将通过一个具体的示例介绍如何使用MediaElement控件来 ... 
- Movist for Mac(高清媒体播放器)v2.0.7中文特别版
		Movist for Mac中文破解版是目前Mac平台上最好用的视频播放器,功能强大简单好用.movist mac版拥有美观简洁的用户界面,提供多种功能,支持视频解码加速高品质的字幕,全屏幕浏览,是与 ... 
- Plyr – 简单,灵活的 HTML5 媒体播放器
		Plyr 是一个简单的 HTML5 媒体播放器,包含自定义的控制选项和 WebVTT 字幕.它是只支持现代浏览器,轻量,方便和可定制的媒体播放器.还有的标题和屏幕阅读器的全面支持. 在线演示 ... 
- 【C语言入门教程】4.10 综合实例 - 媒体播放器
		4.10.1 建立播放列表 数据字典 名称 数据类型 说明 MAX_LENGTH 符号常量 用于定义数组长度,表示列表最大长度 MAX_FILE_LENGTH 符号常量 用于定义数组长度,表示文件名最 ... 
- .net C# 网页播放器 支持多种格式 媒体播放器 播放器 代码
		.avi格式代码片断如下:<object id='video' width='400' height='200' border='0' classid='clsid:CFCDAA03-8BE4- ... 
- C#编写媒体播放器--Microsoft的Directx提供的DirectShow组件,该组件的程序集QuartzTypeLib.dll.
		使用C#编写媒体播放器时,需要用到Microsoft的Directx提供的DirectShow组件.用该组件前需要先注册程序集QuartzTypeLib.dll. 1.用QuartzTypeLib.d ... 
随机推荐
- .NET Core 管道
			从用户发请求到服务器响应返回数据 请求从 Request进去 先经过 Middleware(中间件) 然后经过AuthoriationFilters授权验证(token验证和 多租户验证) 在经 ... 
- SpringBoot的文件上传
			先在src/main/resources下新建一个static目录用以存放html页面,简单的html页面如下 <!DOCTYPE html> <html> <head& ... 
- 使用Qpaint在图片上写文字
			开发过程中需要实现在图片上叠加文字,可以采用Qpaint在图片上写文字,然后将图片显示在上面.再将Qlabel加到Qwidget中.效果如下 //创建对象,加载图片 QPixmap pix; pix. ... 
- VNC安装配置
			1,安装VNC yum install tigervnc-server -y2,设定密码: vncpasswd root 3,配置服务文件,下面是配置了6个窗口. cp /lib/systemd/sy ... 
- Java面试题基础知识(收集)
			1.集合类:list和Set比较,各自的子类比较(Arraylist,Vector,inkedLIst,HashSet,TreeSet) List:存入元素有序,元素可以重复,允许null值得存在,主 ... 
- python--calc计算器的小程序
			x写一个计算器的小程序,正在筹备中......钱不够,演员未定,剧本暂无,请稍等 
- 《HTTP 权威指南》笔记:第十三章 摘要认证体制
			前言 基本认证存在缺陷,摘要认证为了解决基本认知的一些缺陷,进行了进一步的完善,更加安全. 流程 摘要认证的特点是:永远不会以明文方式在网络上发送密码原理:通过发送一个「指纹」或者「密码的摘要」来验证 ... 
- 中心极限定理 | central limit theorem | 大数定律 | law of large numbers
			每个大学教材上都会提到这个定理,枯燥地给出了定义和公式,并没有解释来龙去脉,导致大多数人望而生畏,并没有理解它的美. <女士品茶>有感 待续~ 参考:怎样理解和区分中心极限定理与大数定律? 
- JS获取系统时间--JavaScript基础
			1.网页中实时显示当前时间 <!DOCTYPE html><html lang="en"><head> <meta charset=&qu ... 
- Cisco常用配置和命令
			1.ASA常用管理management-access inside #开启远程连接inside口 show snmp-server oidlist #查看ASA snmp的 ... 
