Windows8 开发的视频播放程序
此项目参考"传智播客.net培训Windows 8开发视频教程"
我是看了视频后用C++写的,主要运用了:
storybord 动画 和 disPchtimer 定时器技术。
开发过程如下:
1,在xaml中定义一个MediaElement 播放控件
<Grid>
<Image x:Name="img1" Source="Assets/1.png" Stretch="None" Margin="20,30,0,20"/>
<MediaElement PointerEntered="Video_PointerEntered_1" PointerMoved="Video_PointerMoved_1" x:Name="VideoPlay" MediaOpened="MediaElement_MediaOpened_1" Height="432" Width="800" Margin="20,30,0,20">
<MediaElement.Projection>
<PlaneProjection x:Name="mediaChange" RotationY="0">
</PlaneProjection>
</MediaElement.Projection>
</MediaElement>
</Grid>
这里的 MediaElement.Projection 是将要控制该控件旋转的。
<MediaElement.Projection>
<PlaneProjection x:Name="mediaChange" RotationY="0"> //绕Y轴旋转
</PlaneProjection>
当视频没有播放前,我贴了一张图片<<Image x:Name="img1"/>

2,插入视频地址,把MediaElement 控件的Source 赋给该url;
VideoPlay->Source = ref new Uri(strUrl);//需要ref new
VideoPlay->Play();//插入url 完成开始播放
如图:

3,我在 MediaElement 控件中,使用 了 PointerEntered 方法(当鼠标进入控件区域激发) 和 PointerMoved 方法(鼠标在该区域移动激发)来控制播放按钮 的隐藏 和 显示。
<MediaElement PointerEntered="Video_PointerEntered_1" PointerMoved="Video_PointerMoved_1" x:Name="VideoPlay" MediaOpened="MediaElement_MediaOpened_1" Height="432" Width="800" Margin="20,30,0,20">
</MediaElement>
响应 PointerMoved 事件,当鼠标在控件上移动时,播放按钮显示。


4,放置一个定时器,当鼠标没有移动的时候,播放按钮消失。
DispatcherTimer^ t = ref new DispatcherTimer(); //放置一个定时器
TimeSpan ts;
ts.Duration = 8* 10000000; //间隔8秒触发一次
t->Interval = ts;
t->Tick += ref new EventHandler<Platform::Object^>(this,&MainPage::time_tick); //触发后要做的事
t->Start();

5,大家还记得我们最初在 MediaElement 中定义的动画事件吗,现在我们来处理这个mediaChange 的改变。
<MediaElement.Projection>
<PlaneProjection x:Name="mediaChange" RotationY="0">
</PlaneProjection>
</MediaElement.Projection>
当点击 变大 按钮的时候,向左旋转
void MainPage::changeBig_Click_1(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e)
{
mediaChange->RotationY += 10;
}

当点击变小按钮的时候,向右旋转。
void MainPage::changeSmail_Click_1(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e)
{
mediaChange->RotationY -= 10;
}

大概就是这么个过程,
如果还有不明白的请给我留言联系。
最后感谢 “传播智客” 提供的win8开发视频,不看我是做不出来的。3Q。
最后效果截图:


浙公网安备 33010602011771号