Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

C# Windows Forms

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 224, средняя оценка - 4.95
Sergei
1432 / 699 / 41
Регистрация: 22.04.2008
Сообщений: 1,608
#1

Обработка события нажатия клавиши клавиатуры - C#

05.03.2009, 11:34. Просмотров 30281. Ответов 6
Метки нет (Все метки)

Здравствуйте, у меня такой вопрос: как обработать событие нажатия определенной клавиши клавиатуры, и если можно в этом обработчике обработать другое событие, например нажатие на какую-либо кнопку на форме?
Всем заранее спасибо!
0
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.03.2009, 11:34
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Обработка события нажатия клавиши клавиатуры (C#):

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

Не работает обработка события нажатия кнопки клавиатуры в форме - C#
Здравствуйте! Есть проблема, задали курсовик, но не получается реализовать несколько моментв: 1. Почему то не срабатывает функция...

Вызов события нажатия кнопки нажатием клавиши на клавиатуре - C#
Доброго времени суток. Когда разрабатывал один проект, внезапно задумался над одной задачкой: можно ли вызвать событие нажатия кнопки, если...

Обработка нажатия клавиши в другом классе - C#
Здравствуйте, подскажите, как можно отправить значение нажатой клавиши в метод другого класса?

Обработка нажатия клавиши: почему и зачем в коде используется sender.equals - C#
данный код пишется в key press if (Char.IsControl(e.KeyChar)) { if(e.KeyChar == (char)Keys.Enter) if...

Обработка нажатия стрелок клавиатуры - C#
Мне нужно обработать события на клавиши "вверх", "вниз" "вправо","влево". Объясните пожалуйста по шагам, как это все сделать. Вот мой...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
QWAN
58 / 57 / 1
Регистрация: 02.09.2008
Сообщений: 181
05.03.2009, 12:32 #2
Почитай книгу Ч. Петзолд Программирование для Windows® 95 в двух томах
Том 1 Часть 2 Средства ввода. Глава 5 Клавиатура.
0
Sergei
1432 / 699 / 41
Регистрация: 22.04.2008
Сообщений: 1,608
05.03.2009, 13:19  [ТС] #3
Все понятно мне нужно в C# и программирую в среде Visual Studio 2005 .Net 2.0

Добавлено через 23 минуты 2 секунды
Вот тебе ссылка по компонентам
http://www.rsdn.ru/article/dotnet/WinForms20.xml
0
Green
1912 / 417 / 11
Регистрация: 12.07.2007
Сообщений: 2,062
Завершенные тесты: 2
06.03.2009, 02:37 #4
Для обработки событий клавиатуры используются события KeyDown, KeyUp, KeyPress.
0
Sergei
1432 / 699 / 41
Регистрация: 22.04.2008
Сообщений: 1,608
06.03.2009, 10:35  [ТС] #5
Тут такая прблема у формы нет фокуса ввода и поэтому эти события нельзя обработать
0
Green
1912 / 417 / 11
Регистрация: 12.07.2007
Сообщений: 2,062
Завершенные тесты: 2
10.03.2009, 03:23 #6
Вам в сторону WinAPI, про хуки
0
and_rey
5 / 5 / 1
Регистрация: 15.03.2011
Сообщений: 9
14.05.2011, 09:58 #7
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
тема конечно старенькая) но может ещё кому пригодится

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
public partial class Form1 : Form
    {
            
        public Form1()
        {
            InitializeComponent();
            
          //добавили событие
         this.KeyUp += new KeyEventHandler(OKP);
 
 
        }
 
         //описание обработчика события
        private void OKP(object sender, KeyEventArgs e)
        {
            
            MessageBox.Show(e.KeyCode.ToString(), "Pressed");
        }
}
Цитата Сообщение от Sergei Посмотреть сообщение
Тут такая прблема у формы нет фокуса ввода и поэтому эти события нельзя обработать
У формы есть свойство KeyPreview, и если оно установлено в true, то в начале все события клавиатуры будут проходить через обработчики формы, а уж потом через обработчики компонентов на форме.
5
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.05.2011, 09:58
Привет! Вот еще темы с ответами:

Обработка нажатия кнопки мыши + клавиатуры - C#
Доброго времени суток. Подскажите пожалуйста, каким образом можно организовать обработчик события и какое должно быть событие для...

Получить "результат" нажатия клавиши с учётом регистра и раскладки клавиатуры - C#
Доброго времени суток господа программисты ! Вопрос вот в чём, нужно получить значение нажатия клавиши, объясняю: this.KeyDown +=...

После нажатия клавиши, не обрабатывать другие клавиши - C#
На форме по нажатию разных клавиш происходят разные вещи, но хочу реализовать паузу по нажатию пробела, т.е. после нажатия пробела, другие...

Обработка нажатия клавиши "Ctrl" совместно с клавишей "+" - C#
Скажите, пожалуйста, как обработать нажатие клавиши "Сtrl" совместно с клавишей "+"?


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
14.05.2011, 09:58
Ответ Создать тему
Опции темы

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