Страницы

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

четверг, 28 марта 2019 г.

Eдиничное нажатие на клавишу

У меня есть Пианино в котором при нажатии на кнопку воспроизводится определенный звук. Как сделать так что бы при нажатии и удержании на клавишу, button1.PerformClick(); срабатывал 1 раз и звук не повторялся.
private void Form1_KeyDown(Object sender, KeyEventArgs e) { switch (e.KeyCode) { case Keys.D1: button1.PerformClick(); button1.BackColor = System.Drawing.Color.Gray; label3.Text = "До / 1"; label5.Text = "1"; break; } }


Ответ

Храните в классе переменную bool isPressed. В методе Form1_KeyDown устанавливайте её в true, в методе Form1_KeyUp - в false. Проверяйте, не нажата ли сейчас кнопка в методе Form1_KeyDown через if(!isPressed){...}

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

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