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 ...
随机推荐
- Trailing Zeroes (I) LightOJ - 1028
题意就是给你一个数让你找它的正因子个数(包括自身,不包括1),这个地方用到一个公式,如果不用的话按正常思路来写会TL什么的反正就是不容易写对. 求任意一个大于1的整数的正因子个数 首先任意一个数n,n ...
- ado_基本连接操作【四】
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Data. ...
- 插件写法之脚本运行环境,mac和window检测
(function(root, factroy){ /* * 在这里进行对脚本运行环境的检测判断 * 浏览器中 有window对象 * node.js服务器端 有Global对象 * * IE11 ...
- jenkins之从0到1利用Git和Ant插件打war包并自动部署到tomcat(第五话):总结以及build.xml文件
前面基本上把整个配置过程都完整地串起来了,包括可能遇到的难点,按照那个套路应该可以配置好自动打包发布的功能.简单总结下我的学习过程,以及遇到问题是怎样解决的. 准备一个项目源码 刚开始在github和 ...
- [jQuery] 通过ajax保存到服务器,成功显示信息.
保存数据到服务器,成功时显示信息. jQuery 代码: $.ajax({ type: "POST", url: "some.php", data: " ...
- centos7: 将nginx,php-fpm加入开机启动
1. 自己新建一个脚本,如centnet-service.sh 经过后面的几个步骤后,这个脚本在开机的时候会执行,在这个脚本里面可以写你开机的时候想执行的命令,如启动nginx,phpf-pm等服务 ...
- 20171113xlVba指定文件夹多簿多表分表合并150
'2017年11月13日 'Next_Seven '功能:文件夹对话框指定文件夹下,合并(复制粘贴)每个Excel文件内的指定子表内容, '在名为"设置"的工作表A列 输入汇总子表 ...
- android -------- Eclipse下的NDK配置环境
NDK 全称是Native Development Kit,是一个让开发人员在Android应用中嵌入使用本地代码编写的组件的工具集 原生开发工具包 (NDK) 是一组可让您在 Android 应用中 ...
- 20165309 实验四 Android程序设计
2017-2018-2 20165309实验四<Java面向对象程序设计>实验报告 一.实验内容 1.Android Studio的安装测试 2.Activity测试 3.UI测试 4.布 ...
- 海康摄像头配置固定IP
前言 首先要海康设备连接好网线,电脑客户端跟海康设备在同一个局域网络. 1.直接在海康网站下载SADP工具软件,安装SADP工具,如图所示: 2.安装成功后,桌面的出现设备网络搜索, 面板介绍:这里将 ...