(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. JDBC的通用查询的方法

    PreparedStatement 1.Why 1):使用Statement需要进行拼写SQL语句,很辛苦,而且容易出错. 2):使用Statement可以发生SQL注入. SQl注入: SQL注入是 ...

  2. 力扣(LeetCode)415. 字符串相加

    给定两个字符串形式的非负整数 num1 和num2 ,计算它们的和. 注意: num1 和num2 的长度都小于 5100. num1 和num2 都只包含数字 0-9. num1 和num2 都不包 ...

  3. python特殊成员函数

    1.__init__():构造函数 2.__del__():析构函数 3.print(__doc__):打印描述信息 4.print(Dog.__module__):类来自的模块 5.print(d1 ...

  4. 颜色选择器 rgb 与16进制 颜色转换

    1. h5 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF ...

  5. DRF中的APIView、GenericAPIView、ViewSet

    1.APIView(rest_framework.views import APIView),是REST framework提供的所有视图的基类,继承自Django的View. 传入到视图方法中的是R ...

  6. 关于datatables自适应以及自定义列宽度的总结

    table-layout:fixed;可以自定义列的宽度 <div id="bizhi" style="width:100%;height: 85%;overflo ...

  7. linux之bash shell

    GNU bash ======================================================== 通常计算机硬件是由运算器.控制器.存储器.输入/输出设备等等这些物理 ...

  8. 20180518VSTO多簿单表汇总

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using Microsof ...

  9. Subordinates CodeForces - 737C (树,构造)

    大意: 求构造一棵树, 每个节点回答它的祖先个数, 求最少打错次数. 挺简单的一个构造, 祖先个数等价于节点深度, 所以只需要确定一个最大深度然后贪心即可. 需要特判一下根的深度, 再特判一下只有一个 ...

  10. 2017-2018 ACM-ICPC Latin American Regional Programming Contest D.Daunting device

    题意:一个数组n个操作每次先查询p颜色的数量然后求出区间,区间染色成x,然后求最大染色数 题解:odt裸题,多维护一个color个数数组就好了 //#pragma comment(linker, &q ...