Microsoft Visual Sudio怎样做视频播放器?

发布时间:2010年12月21日      浏览次数:921 次
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using Microsoft.DirectX.AudioVideoPlayback;
namespace DirectX实现视频播放
{
public partial class Form1 : Form
{
private Video MyVideo = null;
public Form1()
{
InitializeComponent();
//private Video MyVideo = null;
}
private void button1_Click(object sender, EventArgs e)
{
openFileDialog1.InitialDirectory = Application.StartupPath ;
if ( openFileDialog1.ShowDialog ( ) == DialogResult.OK )
{
// 记录panel组件的大小
int height = panel1.Height ;
int width = panel1.Width ;
// 如果存在打开的Video文件,释放它
if ( MyVideo != null )
{
MyVideo.Dispose ( ) ;
}
//MessageBox.Show(openFileDialog1.FileName);
// 打开一个新的Video文件
MyVideo = new Video(openFileDialog1.FileName) ;
// 把Video文件分配给创建的Panel组件
MyVideo.Owner = panel1 ;
// 以记录的panel组件的大小来重新定义
panel1.Width = width ;
panel1.Height = height ;
// 播放AVI文件的第一帧,主要是为了在panel中显示
MyVideo.Play ( ) ;
MyVideo.Pause ( ) ;
}
//确定窗体中的各按钮状态
if ( MyVideo == null )
{
button2.Enabled = false ;
button3.Enabled = false ;
button4.Enabled = false ;
}
else
{
button2.Enabled = true ;
button3.Enabled = true ;
button4.Enabled = true ;
}
}
private void button2_Click(object sender, EventArgs e)
{
if (MyVideo != null)
{
MyVideo.Play();
}
}
private void button3_Click(object sender, EventArgs e)
{
if (MyVideo != null)
{
MyVideo.Pause();
}
}
private void button4_Click(object sender, EventArgs e)
{
if (MyVideo != null)
{
MyVideo.Stop();
}
}
private void Form1_Load(object sender, EventArgs e)
{
if (MyVideo == null)
{
button2.Enabled = false;
button3.Enabled = false;
button4.Enabled = false;
}
else
{
button2.Enabled = true;
button3.Enabled = true;
button4.Enabled = true;
}
}
}
}
免责声明:本站相关技术文章信息部分来自网络,目的主要是传播更多信息,如果您认为本站的某些信息侵犯了您的版权,请与我们联系,我们会即时妥善的处理,谢谢合作!