如何暂停或停止正在播放的音频文件

时间:2018-09-09 22:50:55

标签: c# winforms

下面提到的按钮单击方法可用于开始播放音频文件。但是,一旦开始播放就无法暂停,如果我再次单击该按钮,则歌曲将从头开始重新播放。请让我知道使用Enter键停止它的方法。

private void btn_reproducir_Click(object sender, EventArgs e)
{         
    WindowsMediaPlayer myplayer = new WindowsMediaPlayer();
    myplayer.URL = @"C:\song.mp3";
    myplayer.controls.play();
}

2 个答案:

答案 0 :(得分:3)

请尝试使用此代码。

public partial class Form1 : Form
    {
        // Media player object
        WindowsMediaPlayer myplayer = new WindowsMediaPlayer();        

        public Form1()
        {
            InitializeComponent();
            myplayer.URL = @"C:\song.mp3";
        }

        private void reproducir_Click(object sender, EventArgs e)
        {           
            myplayer.controls.play();
        }

        private void btnStop_Click(object sender, EventArgs e)
        {
            myplayer.controls.stop();
        }

        private void btnPause_Click(object sender, EventArgs e)
        {
             myplayer.controls.pause();
        }
    }

答案 1 :(得分:3)

如果您想使用相同的按钮来播放和暂停音乐,则可以使用标志来确定其行为:

bool isPlaying = false;

private void btn_reproducir_Click(object sender, EventArgs e)
{         
    WindowsMediaPlayer myplayer = new WindowsMediaPlayer();
    myplayer.URL = @"C:\song.mp3";

    if(isPlaying)
    {
        myplayer.controls.pause();
        isPlaying = false;
    }
    else
    {
        myplayer.controls.play();
        isPlaying = true;
    }
}

如果要使用Enter键从表单的任何位置单击按钮,只需将表单的“ AcceptButton”设置为要单击的按钮。只要当前具有焦点的控件不使用Enter键,则按Enter键将自动单击AcceptButton。如果多行文本框具有焦点,这种情况将不起作用。多行文本框允许您按Enter键以开始新行,因此在这种情况下将不会单击AcceptButton。

enter image description here

此外,您始终可以使用Tab键将按钮制表到该按钮,然后在按钮突出显示后按Enter键。