Страницы

Поиск по вопросам

пятница, 14 июня 2019 г.

C# события. Событие при зажатой кнопке

Нужно что бы выполнялся некоторой метод при зажатой(не нажатой, а именно зажатой) кнопке "A". А когда я ее отпускаю вызывался другой метод.
Есть вот такой код. Но почему то мелодия проигрывается всего 1 секунду, а потом останавливатся.
private void Window_KeyDown(object sender, KeyEventArgs e) { if (e.Key == Key.A) { PlaySound(); this.MyBotton.Background = Brushes.Black; } }
private void PlaySound() { wpalyer.URL = @"D:123.mp3"; wpalyer.controls.play(); }
private void Window_KeyUp(object sender, KeyEventArgs e) { if (e.Key == Key.A) { wpalyer.controls.stop(); this.MyBotton.Background = Brushes.White; } }


Ответ

Я бы посоветовал такой путь:
private void Window_KeyDown(object sender, KeyEventArgs e) { if (e.Key == Key.A && !e.IsRepeat) // проверка на повторение { PlaySound(); this.MyBotton.Background = Brushes.Black; } }

Комментариев нет:

Отправить комментарий