Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.80/15: Рейтинг темы: голосов - 15, средняя оценка - 4.80
624 / 564 / 165
Регистрация: 17.07.2012
Сообщений: 1,604
Записей в блоге: 1
1

Как перехватить нажатие пробела в фокусе кнопки

05.11.2012, 14:54. Показов 2883. Ответов 9
Метки нет (Все метки)

Приветствую всех.
Собственно, сабж.

C#
1
2
3
4
        private void btCancel_KeyPress(object sender, KeyPressEventArgs e)
        {
            if (e.KeyChar == 0x20) e.Handled = true;
        }
- всё равно не перехватывает пробел.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
05.11.2012, 14:54
Ответы с готовыми решениями:

Как перехватить нажатие кнопки '~'?
Как перехватить нажатие кнопки '~'?

Можноли как либо перехватить нажатие кнопки back на тулбаре и бэкспейса?
Можноли как либо перехватить нажатие кнопки back на тулбаре и бэкспейса?

Перехватить нажатие кнопки
Как перехватывать событие нажатия кнопки, проверить какая кнопка нажата? И как приращивать счётчик?

Перехватить нажатие кнопки в другом приложении
Есть прога, написанная вроде на дельфях (остался только exe-шник), есть ли возможность перехватить...

9
222 / 222 / 38
Регистрация: 17.12.2010
Сообщений: 713
05.11.2012, 16:05 2
что значит перехватить?
вот например, если пробел нажат при фокусе кнопки - выводиться сообщение:

C#
1
2
3
4
5
   private void button1_KeyPress(object sender, KeyPressEventArgs e)
        {
            if (e.KeyChar == 0x20)
                MessageBox.Show("Space");
        }
0
624 / 564 / 165
Регистрация: 17.07.2012
Сообщений: 1,604
Записей в блоге: 1
05.11.2012, 16:09  [ТС] 3
Цитата Сообщение от Aloir Посмотреть сообщение
что значит перехватить?
вот например, если пробел нажат при фокусе кнопки - выводиться сообщение:
Чтобы не происходило нажатие кнопки по нажатию пробела.
0
222 / 222 / 38
Регистрация: 17.12.2010
Сообщений: 713
05.11.2012, 16:11 4
Цитата Сообщение от Cupko Посмотреть сообщение
Чтобы не происходило нажатие кнопки по нажатию пробела.
C#
1
2
     
e.KeyChar = '\0';
0
624 / 564 / 165
Регистрация: 17.07.2012
Сообщений: 1,604
Записей в блоге: 1
05.11.2012, 16:17  [ТС] 5
Всё равно кнопочка нажимается.
0
222 / 222 / 38
Регистрация: 17.12.2010
Сообщений: 713
05.11.2012, 16:24 6
Цитата Сообщение от Cupko Посмотреть сообщение
Всё равно кнопочка нажимается.
тебе надо, чтобы не было отрисовки анимации нажатия кнопки?
0
624 / 564 / 165
Регистрация: 17.07.2012
Сообщений: 1,604
Записей в блоге: 1
05.11.2012, 16:25  [ТС] 7
Цитата Сообщение от Aloir Посмотреть сообщение
тебе надо, чтобы не было отрисовки анимации нажатия кнопки?
Мне надо чтобы не выполнялось событие Click кнопки.
0
222 / 222 / 38
Регистрация: 17.12.2010
Сообщений: 713
05.11.2012, 16:32 8
мм, сходу не скажу даже.. могу предложить пока сделать флажок, и на onClick обрабатывать его
0
624 / 564 / 165
Регистрация: 17.07.2012
Сообщений: 1,604
Записей в блоге: 1
05.11.2012, 16:35  [ТС] 9
Цитата Сообщение от Aloir Посмотреть сообщение
мм, сходу не скажу даже.. могу предложить пока сделать флажок, и на onClick обрабатывать его
А разве как-то на onClick можно распознать как-то чем оно вызвано? Через MouseOver? Мне ещё хоткей прилеплять на кнопочку надо, тогда как?
0
222 / 222 / 38
Регистрация: 17.12.2010
Сообщений: 713
05.11.2012, 17:09 10
ну я имею ввиду сделать примерно так:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
 public partial class Form1 : Form
    {
        private bool flag;
 
        public Form1()
        {
            InitializeComponent();
            flag = false;
        }
 
 
        private void button1_KeyPress(object sender, KeyPressEventArgs e)
        {
            if (e.KeyChar == 0x20)
                flag = true;
        }
 
 
        private void button1_Click(object sender, EventArgs e)
        {
            if (!flag)
            {
                MessageBox.Show("FF");
 
            }
            else
            {
                flag = false;
            }
        }
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
05.11.2012, 17:09

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

Как перехватить нажатие кнопки "свернуть"?
Kak perehvatit' naztie knopki 'Svernut''?

Как перехватить нажатие на Delete?
Можно ли как-то перехватить в VBA Excel нажатие юзером на клавиатуре на клавишу Delete?

Как перехватить нажатие на ссылку в IE
Как перехватить нажатие на ссылку в IE, чтобы запустить мою собственную программу с передачей ей...

Перехватить клик по клавише на клавиатуре, когда окно не в фокусе
Здравствуйте, у меня Windows Form приложение. Мне нужно отловить клик по клавише Shift на...


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

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

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