c# axWindowsMediaPlayer 重复播视频短暂黑窗口解决

 public partial class VedioForm : Form
    {
        public VedioForm()
        {
            InitializeComponent();
        }
        private void VedioForm_Load(object sender, EventArgs e)
        {          
            timer1.Enabled = true;//开启视频进度查询时钟(500ms)
            axWindowsMediaPlayer1.URL = @"D:\Debug\background.mp4";//查找添加指定路径的mp4地址       
        }
        private void VedioForm_FormClosed(object sender, FormClosedEventArgs e)
        {
            System.Environment.Exit(0);        
        }     
        private void axWindowsMediaPlayer1_StatusChange(object sender, EventArgs e)
        {
            //  判断视频是否已停止播放播放状态,1 = 停止,2 = 暂停,3 = 播放,6 = 正在缓冲,9 = 正在连接,10 = 准备就绪
            if (axWindowsMediaPlayer1.playState == WMPLib.WMPPlayState.wmppsPaused)
            {
                //设定不允许暂停
                axWindowsMediaPlayer1.Ctlcontrols.play();
            }
        }
        //添加一个timer1控件检查播放进度//防止播放中的视频结束,出现黑屏界面。
        private void timer1_Tick(object sender, EventArgs e)
        {
            int vediotime = (int)axWindowsMediaPlayer1.currentMedia.duration - 1;//正在播放的视频总进度-1
            int playtime = (int)axWindowsMediaPlayer1.Ctlcontrols.currentPosition;//正在播放的视频总进度
            if (playtime == vediotime)
            {
                axWindowsMediaPlayer1.Ctlcontrols.currentPosition = 0;//跳转到开头
            }
        }      
    }

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值