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 playVideoProject
{
public partial class Form1 : Form
{
private Video myvideo = null;
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
openFile.InitialDirectory=Application.StartupPath;//获取对话框显示时的初始目录
if (openFile.ShowDialog() == DialogResult.OK)
{
// 记录panel组件的大小
int height = panel1.Height;
int width = panel1.Width;
// 如果存在打开的Video文件,释放它
if (myvideo != null)
{
myvideo.Dispose();
}
// 打开一个新的Video文件
myvideo = new Video(openFile.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 button3_Click(object sender, EventArgs e)
{
if (myvideo != null)
{
myvideo.Pause();
}
}
private void button2_Click(object sender, EventArgs e)
{
if (myvideo != null)
{
myvideo.Play();
}
}
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;
}
}
private void button4_Click(object sender, EventArgs e)
{
if (myvideo != null)
{
myvideo.Stop();
}
}
private void panel1_Paint(object sender, PaintEventArgs e)
{
}
}
}
|
请发表评论