KeyPressed в C # GUI - PullRequest
       46

KeyPressed в C # GUI

1 голос
/ 05 января 2012

Я пытаюсь построить приложение с графическим интерфейсом в C #. Я использую MS Visual Studio 2010. У меня много кнопок, и я хочу соединить клавиатуру с кнопками в приложении. Поэтому, когда нажата кнопка «w» (только для примера), я хочу активировать кнопку. И я хочу, чтобы при нажатой кнопке кнопка выполняла свою функцию несколько раз. Я пытался сделать это с KeyPress, KeyDown и KeyUp, но они не работали. Я хочу сделать это как вождение автомобиля в NFS - пока нажата стрелка вверх, машина движется вперед, но в этом случае, пока нажата текущая кнопка, ее функция выполняется.

Спасибо за совет.

1 Ответ

1 голос
/ 05 января 2012

Вы можете достичь этого, используя некоторые флаги и таймер.

Когда пользователь нажимает клавишу «W», вы устанавливаете флаг как keyDown, и после этого запускаете таймер.По истечении таймера вы можете проверить флаг keyDown и выполнить назначенную работу для этого ключа.OnKeyUp вы сбросите флаг и остановите таймер.

Надеюсь, что это отвечает на ваш вопрос.

...