C# 在特定时间启动和停止视频Windows Media Player
我正在使用Windows Media Player对象在我的C#winforms项目中播放视频C# 在特定时间启动和停止视频Windows Media Player,c#,C#,我正在使用Windows Media Player对象在我的C#winforms项目中播放视频 VideoPlayer.URL = "C:\test.avi"; 我的test.avi持续时间是12秒。我想在4到8秒之间玩这个 我可以从4秒开始播放视频,如下所示 VideoPlayer.Ctlcontrols.currentPosition = 4 那么,如何在播放视频后的第8秒停止视频?您可以使用计时器来完成此操作: private Timer tmrWmpPlayerPosition;
VideoPlayer.URL = "C:\test.avi";
我的test.avi持续时间是12秒。我想在4到8秒之间玩这个
我可以从4秒开始播放视频,如下所示
VideoPlayer.Ctlcontrols.currentPosition = 4
那么,如何在播放视频后的第8秒停止视频?您可以使用计时器来完成此操作:
private Timer tmrWmpPlayerPosition;
private TimeSpan StopPosition;
private void btn_Click(object sender, EventArgs e)
{
wmpPlayer.Ctlcontrols.currentPosition = 4;
StopPosition=TimeSpan.Parse("00:20:20");
StopWmpPlayerTimer();
StartWmpPlayerTimer();
}
private void tmrWmpPlayerPosition_Tick(object sender, EventArgs e)
{
if ((Convert.ToInt32(StopPosition.TotalSeconds) != Convert.ToInt32(wmpPlayer.Ctlcontrols.currentPosition))) return;
wmpPlayer.Ctlcontrols.pause();
StopWmpPlayerTimer();
}
private void StartWmpPlayerTimer()
{
tmrWmpPlayerPosition = new Timer();
tmrWmpPlayerPosition.Tick += new EventHandler(tmrWmpPlayerPosition_Tick);
tmrWmpPlayerPosition.Enabled = true;
tmrWmpPlayerPosition.Interval = 1000;
tmrWmpPlayerPosition.Start();
}
private void StopWmpPlayerTimer()
{
if (tmrWmpPlayerPosition != null)
tmrWmpPlayerPosition.Dispose();
tmrWmpPlayerPosition = null;
}
我猜会是位置改变事件-(很抱歉没有让visual studio出现在我面前)非常感谢。我测试了该事件,但该事件仅在3秒时触发一次。如果每秒钟触发一次事件,我就可以控制停止时间。Kerberos,我对wmp sdk不太了解,但您可以始终拥有一个间隔为4秒的计时器,并使用该事件stop@Sayse谢谢你的建议。如果我发现使用WMP的本机事件会更好。