0

当我从列表框中播放选择的不同视频时,我是 C# 的新手。我同时播放以前播放的视频和当前视频。对于正在播放的仅选定的视频,我应该怎么做。

我的代码如下: -

namespace videoplayer
{

    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        Video vid;
        string currentmedia;
        string[] s=new string[5];

        public void button1_Click_1(object sender, EventArgs e)
        {
            openFileDialog1.ShowDialog();
            openFileDialog1.FileNames.CopyTo(s, 0);
            foreach (string l in s)
            {
                listBox1.Items.Add(l);
            }
        }

        private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
        {
            current=(s[listBox1.SelectedIndex]);
            vid = new Video(current);
            vid.Play();
        }
    }
}
4

1 回答 1

0

每次您的选择索引更改时,Video都会创建一个新的 a 实例。

我建议您创建一个全局实例并使用它来处理所有视频文件。

像这样的东西:

Video player;
private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
{
    current=(s[listBox1.SelectedIndex]);

    if (player != null && player.Playing)
        player.Stop();

    if (player != null)
        player.Dispose();

    player = new Video(current);
    player.Play();            

}
于 2013-03-30T05:51:31.517 回答