Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.81/21: Рейтинг темы: голосов - 21, средняя оценка - 4.81
1 / 1 / 0
Регистрация: 30.09.2012
Сообщений: 7
1

Как отследить нажатие двух клавиш на форме

13.11.2012, 12:40. Показов 4270. Ответов 1
Метки нет (Все метки)

Такие дела. Ищу литературу, мануалы, статьи, о работе с клавиатурой в сишарп. Тот мануал по которому я изучаю, о клавишах очень мало, нужно больше. Простые вещи вроде следующие я знаю, но она работает довольно стремно, хотелось бы узнать о других способах.
Делаем событие.
C#
1
this.KeyDown += new KeyEventHandler(Hop);
Ну и сам метод.
C#
1
2
3
4
5
6
7
8
 private void Hop(Object sender, KeyEventArgs e)
        {           
                if (e.KeyCode == Keys.D)
                {
                   //код
                }
            }
        }
Если мне нужно например нажать две кнопки сразу, то я добавляю еще одну проверку в метод.
C#
1
2
3
4
5
6
7
8
9
10
11
12
 private void Hop(Object sender, KeyEventArgs e)
        {           
                if (e.KeyCode == Keys.D)
                {
                   //код первой клавиши
                }
 if (e.KeyCode == Keys.F)
                {
                   //код второй клавиши
                }
            }
        }
Но работает не так как хотелось бы. Нажимаю первую кнопку и держу - исполняется код первого условия как будто в цикле. Не отпуская первую, нажимаю и держу вторую - исполнение кода первой(sic!) прерывается, начинается второй. Не отпуская нажимаю снова первую - второй прерывается, начинается первый. Мне бы хотелось, чтобы код исполнялся у обоих клавиш, если они обе нажаты, а не последней нажатой клавиши. Есть такие способы? Или дайте наводку на мануал или что-нибудь. Уже несколько дней ищу в интернете, не могу найти.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
13.11.2012, 12:40
Ответы с готовыми решениями:

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

C# Отслеживание нажатия двух клавиш на форме
Пишу приложение управления машинкой по WIFi. и вот застрял на том что не знаю как отследить нажатие...

Как отследить нажатие кнопки?
можно ли как-нибудь отследить нажатие кнопки на форме без переменных типа bool (вообще без...

Как отследить нажатие кнопки play в Windows media player
Как отследить нажатие кнопки play в WMP формы? Пока что реализовано на Button формы. Смысл в том,...

1
Футболист
526 / 428 / 142
Регистрация: 31.10.2011
Сообщений: 1,008
13.11.2012, 16:16 2
Могу подсказать разве что с alt или shift или ctrl клавишами
C#
1
2
3
4
5
6
7
private void Form1_KeyDown(object sender, KeyEventArgs e)
        {
            if (e.KeyCode == Keys.D && e.Modifiers == Keys.Alt)//alt+D
            {
                MessageBox.Show("ALT+D");
            }
        }
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
13.11.2012, 16:16

Заказываю контрольные, курсовые, дипломные работы и диссертации здесь.

Как имитировать нажатие клавиш
Каким образом с помощью C# можно вызвать событие любой кнопки клавиатуры. н.п. У меня есть форма...

Как отлавливать нажатие клавиш глобально
Всем здрасте. Прошу Вашей помощи в развязании следующей проблемы. Пишу инструмент для программы...

Как сделать реагирование на нажатие клавиш?
Здравствуйте! Задачка такая. Есть программа. Её запускаю, сворачиваю. Дальше занимаюсь своим...

Как имитировать нажатие клавиш внутри формы c#
Мне надо имитировать нажатие клавиши. Я пробовал в таймере вызывать класс...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.