Как сделать паузу или остановить аудиофайл, который воспроизводится - PullRequest
0 голосов
/ 10 сентября 2018

Метод нажатия кнопки, упомянутый ниже, может использоваться для запуска воспроизведения аудиофайла. Однако, как только он запускается, он не может быть приостановлен, если я снова нажму кнопку, песня начнет воспроизводиться снова, с самого начала. Пожалуйста, дайте мне знать, как остановить это, используя клавишу ввода.

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

Ответы [ 2 ]

0 голосов
/ 10 сентября 2018

Если вы хотите использовать одну и ту же кнопку для воспроизведения и приостановки музыки, вы можете использовать флаг, чтобы определить ее поведение:

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;
    }
}

Если вы хотите использовать клавишу ввода, чтобы нажать кнопку изв любом месте формы просто установите «AcceptButton» для кнопки, на которую вы хотите нажать.Пока элемент управления, который в данный момент имеет фокус, не использует клавишу ввода, нажатие клавиши ввода автоматически будет нажимать кнопку AcceptButton.Сценарий, в котором это не сработало бы, был бы, если бы фокусировалось многострочное текстовое поле.Многострочное текстовое поле позволяет нажать клавишу ввода, чтобы начать новую строку, поэтому в этом случае кнопка AcceptButton не будет нажата.

enter image description here

Дополнительно, вы всегда можете использовать клавишу табуляции для перехода к кнопке, а затем нажать клавишу ввода после выделения кнопки.

0 голосов
/ 10 сентября 2018

Пожалуйста, попробуйте этот код.

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();
        }
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...