最近,公司要做视频播放器,网上找了下,发现合适自己的没有,就自己研究下 代码如下:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace WindowsMediaPlayer
{
public partial class WindowsMediaPlayer : Form
{
public WindowsMediaPlayer()
{
InitializeComponent();
}
private void Open_Click(object sender, EventArgs e)
{
openFileDialog.Filter = "(mp3,wav,mp4,mov,wmv,mpg)|*.mp3;*.wav;*.mp4;*.mov;*.wmv;*.mpg|all files|*.*";
if (openFileDialog.ShowDialog() == DialogResult.OK)
{
axWindowsMediaPlayer1.URL = openFileDialog.FileName;//本地路径
axWindowsMediaPlayer1.Ctlcontrols.play();
//axWindowsMediaPlayer1.URL = "https://qiniu-xpc15.xpccdn.com/5ef2fdeee119b.mp4";//在线路径
//axWindowsMediaPlayer1.Ctlcontrols.play();
}
}
private void button1_Click(object sender, EventArgs e)
{
axWindowsMediaPlayer1.Ctlcontrols.pause();//暂停
}
private void button2_Click(object sender, EventArgs e)
{
axWindowsMediaPlayer1.Ctlcontrols.play();//播放
}
private void button10_Click(object sender, EventArgs e)
{
axWindowsMediaPlayer1.Ctlcontrols.stop();//退出播放
}
private void button3_Click(object sender, EventArgs e)
{
double aaa=axWindowsMediaPlayer1.Ctlcontrols.currentPosition;
MessageBox.Show(aaa.ToString());//获取当前进度
}
private void timer1_Tick(object sender, EventArgs e)
{//注意 这个是要使用timer组件
label1.Text = axWindowsMediaPlayer1.Ctlcontrols.currentPositionString;
if (axWindowsMediaPlayer1.currentMedia != null) {
label2.Text = axWindowsMediaPlayer1.currentMedia.durationString;//获取总时间
}
}
private void button4_Click(object sender, EventArgs e)
{
axWindowsMediaPlayer1.Ctlcontrols.fastForward();//快进
}
private void button5_Click(object sender, EventArgs e)
{
axWindowsMediaPlayer1.Ctlcontrols.fastReverse();//快退
}
private void WindowsMediaPlayer_Load(object sender, EventArgs e)
{
timer1.Interval = 1;
this.timer1.Start();//开启定时器
Boolean is_true = true;
axWindowsMediaPlayer1.settings.setMode("loop", is_true);//循环播放
}
private void button6_Click(object sender, EventArgs e)
{
axWindowsMediaPlayer1.settings.rate=2;//播放速率
}
private void button7_Click(object sender, EventArgs e)
{
axWindowsMediaPlayer1.settings.rate = 1.5;//播放速率
}
private void button8_Click(object sender, EventArgs e)
{
axWindowsMediaPlayer1.Ctlcontrols.currentPosition = 3;//自定义当前播放进度
}
private void button9_Click(object sender, EventArgs e)
{
axWindowsMediaPlayer1.settings.rate = 1;//播放速率
}
private void button11_Click(object sender, EventArgs e)
{
Boolean is_true = true;
axWindowsMediaPlayer1.settings.mute =is_true;//静音
}
private void button12_Click(object sender, EventArgs e)
{
Boolean is_true = false;
axWindowsMediaPlayer1.settings.mute = is_true;
}
}
}