(3)停止视频播放

接下来添加对视频文件播放的停止控制,打开MainPage.xaml文件,并在Grid元素中添加一个"停止"按钮,用于停止视频的播放,代码如下所示:

<Button x:Name="StopButton" Click="StopClick" HorizontalAlignment="Left" Margin="10,0,10,0" Content="停止" Grid.Column="2"></Button>

添加"停止"按钮以后,接下来为此按钮添加单击事件处理函数StopClick。打开MainPage.xaml.h头文件,并添加如下的代码,用来声明StopClick函数。

private:

    //停止按钮

    void StopClick(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e);

声明了StopClick函数以后,接着打开MainPage.xaml.cpp源文件,并添加StopClick函数的实现代码,具体代码如下所示:

//停止按钮

void FileDemo::MainPage::StopClick(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e)

{

    //停止当前视频

    Video->Stop();

    //设置播放速率

    Video->DefaultPlaybackRate=1.0;

    //显示播放状态

    VideoState->Text="播放状态:"+Video->CurrentState.ToString();

}

在上面的代码中,调用MediaElement控件的Stop函数来停止当前视频的播放,然后将MediaElement控件的DefaultPlaybackRate属性赋值为1.0,这是为了将视频的播放速率改变为正常的播放速率。最后使用MediaElement控件中的CurrentState属性得到视频的播放状态,并调用ToString函数将其转换成字符串类型,显示到名为"VideoState"的TextBlock控件中。

添加了"停止"按钮后,前台界面的显示效果如图20-11所示,"停止"按钮显示在"暂停"按钮之后。

图20-11停止播放

(4)添加快进和快退按钮

快进和快退是视频播放的常用功能,下面通过添加"快进"按钮和"快退"按钮来控制视频的快进和快退播放。首先打开MainPage.xaml文件,并在Grid元素中原有代码的基础上继续添加如下的代码:

<Button x:Name="ForwardButton" Click="ForwardClick" HorizontalAlignment="Left" Margin="10,0,10,0" Content="快进" Grid.Column="3"></Button>

<Button x:Name="BackwardButton" Click="BackwardClick" HorizontalAlignment="Left" Margin="10,0,10,0" Content="快退" Grid.Column="4"></Button>

上述的代码添加了两个按钮,分别为"快进"按钮和"快退"按钮。其中"快进"按钮用于快进播放视频,"快退"按钮则用于快退播放视频。

添加了"快进"按钮和"快退"按钮以后,接下来先为"快进"按钮添加单击事件处理函数ForwardClick。打开MainPage.xaml.h头文件,并添加如下的代码,用来声明ForwardClick函数。

private:

    //快进播放视频

    void ForwardClick(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e);

声明了ForwardClick函数以后,接着打开MainPage.xaml.cpp源文件,添加ForwardClick函数的实现代码,具体代码如下所示:

//快进播放视频

void FileDemo::MainPage::ForwardClick(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e)

{

    //设置播放速率为2.0

    Video->DefaultPlaybackRate=2.0;

    //播放视频

    Video->Play();

    //显示播放状态

    VideoState->Text="播放状态:"+Video->CurrentState.ToString();

}

在ForwardClick函数中,将MediaElement控件的DefaultPlaybackRate属性赋值为2.0,表示以正常播放的两倍速度来播放MediaElement控件中的视频文件,从而实现快进功能。接着调用MediaElement控件的Play函数来播放视频。然后使用MediaElement控件中的CurrentState属性得到视频的播放状态,并调用ToString函数将其转换成字符串类型,显示到名为"VideoState"的TextBlock控件中。

添加了ForwardClick函数的实现代码以后,接下来为"快退"按钮添加单击事件处理函数BackwardClick。在MainPage.xaml.h头文件中添加如下的代码,用来声明BackwardClick函数。

private:

    //快退播放视频

    void BackwardClick(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e);

声明了BackwardClick函数以后,接着在MainPage.xaml.cpp源文件中添加BackwardClick函数的实现代码,具体代码如下所示:

//快退播放视频

void FileDemo::MainPage::BackwardClick(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e)

{

    //设置播放速率为-2.0

    Video->DefaultPlaybackRate=-2.0;

    //播放视频

    Video->Play();

    //显示播放状态

    VideoState->Text="播放状态:"+Video->CurrentState.ToString();

}

在BackwardClick函数中将MediaElement控件的DefaultPlaybackRate属性赋值为-2.0,使视频以正常播放的两倍速度来倒退播放。接着调用MediaElement控件的Play函数来播放视频。然后使用MediaElement控件中的CurrentState属性得到视频的播放状态,并调用ToString函数将其转换成字符串类型,显示到名为"VideoState"的TextBlock控件中。

添加了"快进"按钮和"快退"按钮后,前台界面的显示效果如图20-12所示,"快进"按钮和"快退"按钮显示在"停止"按钮之后。

图20-12快退和快进按钮

Win10系列:VC++媒体播放控制2的更多相关文章

  1. Win10系列:VC++媒体播放控制1

    在MediaElement控件中定义了用于控制视频播放的函数,如Play.Pause和Stop等函数.本小节将在20.6.1小节所新建的项目基础上继续来介绍如何为视频添加播放控制,并在最后一部分给出项 ...

  2. Win10系列:VC++媒体播放控制4

    (7)音量控制 MediaElement控件具有一个Volume属性,通过设置此属性的值可以改变视频音量的大小.接下来介绍如何实现视频的音量控制,首先打开MainPage.xaml文件,并在Grid元 ...

  3. Win10系列:VC++媒体播放控制3

    (5)添加视频进度条 视频进度条可以用来显示当前视频的播放进度,并可以通过拖动视频进度条来改变视频的播放进度.接下来介绍如何实现视频进度条,首先打开MainPage.xaml文件,并在Grid元素中添 ...

  4. Win10系列:VC++媒体播放

    媒体播放包括视频播放和音频播放,在开发Windows应用商店应用的过程中可以使用MediaElement控件来播放视频文件和音频文件.本节将通过一个具体的示例介绍如何使用MediaElement控件来 ...

  5. Movist for Mac(高清媒体播放器)v2.0.7中文特别版

    Movist for Mac中文破解版是目前Mac平台上最好用的视频播放器,功能强大简单好用.movist mac版拥有美观简洁的用户界面,提供多种功能,支持视频解码加速高品质的字幕,全屏幕浏览,是与 ...

  6. Plyr – 简单,灵活的 HTML5 媒体播放器

    Plyr 是一个简单的 HTML5 媒体播放器,包含自定义的控制选项和 WebVTT 字幕.它是只支持现代浏览器,轻量,方便和可定制的媒体播放器.还有的标题和屏幕阅读器的全面支持. 在线演示      ...

  7. 【C语言入门教程】4.10 综合实例 - 媒体播放器

    4.10.1 建立播放列表 数据字典 名称 数据类型 说明 MAX_LENGTH 符号常量 用于定义数组长度,表示列表最大长度 MAX_FILE_LENGTH 符号常量 用于定义数组长度,表示文件名最 ...

  8. .net C# 网页播放器 支持多种格式 媒体播放器 播放器 代码

    .avi格式代码片断如下:<object id='video' width='400' height='200' border='0' classid='clsid:CFCDAA03-8BE4- ...

  9. C#编写媒体播放器--Microsoft的Directx提供的DirectShow组件,该组件的程序集QuartzTypeLib.dll.

    使用C#编写媒体播放器时,需要用到Microsoft的Directx提供的DirectShow组件.用该组件前需要先注册程序集QuartzTypeLib.dll. 1.用QuartzTypeLib.d ...

随机推荐

  1. OSI 七层和五层

  2. wow 滚动动画

    1.demo <!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset=" ...

  3. 有关C#中List排序的总结

    这里有一篇文章作者总结的就比较详细: https://blog.csdn.net/jimo_lonely/article/details/51711821 在这里只记录一点: 对list或者数组中的数 ...

  4. 第 3 章 镜像 - 013 - Dockerfile 构建镜像

    第一个 Dockerfile FROM ubuntu RUN apt-get update && apt-get install -y vim 运行 docker build 命令构建 ...

  5. nodejs导出excel

    //导出Excel var nodeExcel = require("excel-export"); var fs = require("fs"); var c ...

  6. 日常英语---十、MapleStory/Monsters/Level 191-201(Sad Erda:向你发射炮弹进行攻击)

    日常英语---十.MapleStory/Monsters/Level 191-201(Sad Erda:向你发射炮弹进行攻击) 一.总结 一句话总结:一种悲伤的精神,形成于奥术之河,一个黑法师能够融合 ...

  7. 亚马逊商品页面的简单爬取 --Pyhon网络爬虫与信息获取

    1.亚马逊商品页面链接地址(本次要爬取的页面url) https://www.amazon.cn/dp/B07BSLQ65P/ 2.代码部分 import requestsurl = "ht ...

  8. Java泛型简单理解

    优点1: 没有使用泛型,向list集合中添加非字符串,运行时会报错:类型不匹配 ObjectList.java: package cn.nxl2018; import java.util.ArrayL ...

  9. VueJs大全;vee-validate(一个验证vue插件), bootstrap-vue, axios简介。

    Vue.js大全(包括依赖,插件,好的指导文章等!)

  10. canvas学习之树叶动画

    项目地址:http://pan.baidu.com/s/1geJgqen 今天用canvas做了一个树叶发芽到凋落的动画,当然还有很多不完善的地方,不过也让我体会到了,做动画技术占2分,算法占8分.这 ...