WPF中动画的控制播放

3 年前 · 来自专栏 WPF入门

在WPF中,一旦创建故事板,就可以用其他动作控制故事板。本例介绍几个常用的控制动画播放的动作,在本例中,使用故事版控制一首Mp3的播放,暂停,继续,以及停止。

直接上代码:

<MediaElement Name="md" />

<StackPanel Orientation="Horizontal" >

<StackPanel.Resources>

<Storyboard x:Key="music" BeginTime="0:0:1" >

<MediaTimeline Storyboard.TargetName="md" Source="ALWAYS.mp3"/>

</Storyboard>

</StackPanel.Resources>

<StackPanel.Triggers>

<EventTrigger x:Name="enteraction" RoutedEvent="B utton.Click " SourceName="btnstart">

<BeginStoryboard Storyboard="{StaticResource music}" Name="Test"/>

</EventTrigger>

<EventTrigger RoutedEvent="B utton.Click " SourceName="btnPause">

<PauseStoryboard BeginStoryboardName="Test"/>

</EventTrigger>

<EventTrigger RoutedEvent="B utton.Click Button.Click " SourceName="btnResume">

<ResumeStoryboard BeginStoryboardName="Test"/>

</EventTrigger>

<EventTrigger RoutedEvent="B utton.Click " SourceName="btnStop">

<StopStoryboard BeginStoryboardName="Test"/>

</EventTrigger>

</StackPanel.Triggers>

<MediaElement Name="md" />

<Button Name="btnstart" Margin="10 0" Content="播放" Width="90" Height="40"></Button>

<Button Name="btnPause" Margin="10 0" Content="暂停" Width="90" Height="40"></Button>

<Button Name="btnResume" Margin="10 0" Content="继续" Width="90" Height="40"/>

<Button Name="btnStop" Margin="10 0" Content="停止" Width="90" Height="40"/>

</StackPanel>

1.在StackPanel面板中,放置四个按钮,分别用来控制播放、暂停、继续、停止功能;

2.在StackPanel外部放置一个MediaElement,它可以用来播放媒体;

3.在StackPanel的Resouces属性中定义一个故事板,MediaTimeline的目标元素指向MediaElement,资源为放置在项目中的MP3文件。

4.在StackPanel.Triggers中,定义四个事件触发器,SourceName分别指向四个按钮。

5.点击播放按钮,触发定义好的故事板,并命名为Test;

6.点击暂停按钮,使用PauseStoryboard来暂停故事板,BeginStoryboardName属性设置为已经启动的故事板Test;

7.点击继续按钮,使用ResumeStoryboard来继续播放故事板,属性设置同上;

8.点击停止按钮,使用StopStoryboard来停止故事板,属性设置同上;

一个简单的播放控制完成,欢迎大家前来交流;

发布于 2020-03-16 21:30

文章被以下专栏收录

    WPF入门

    WPF入门