zoukankan      html  css  js  c++  java
  • Win10系列:VC++媒体播放控制2

    (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快退和快进按钮

  • 相关阅读:
    bzoj3675 [Apio2014]序列分割
    bzoj4010 [HNOI2015]菜肴制作
    bzoj4011 [HNOI2015]落忆枫音
    bzoj100题
    JSP—内置对象
    集合框架—常用的map集合
    集合框架—HashMap
    集合框架—代码—用各种集合进行排序
    集合框架—2种排序比较器
    array
  • 原文地址:https://www.cnblogs.com/finehappy/p/6645530.html
Copyright © 2011-2022 走看看