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

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

14.08.2014, 18:01. Показов 4168. Ответов 2
Метки нет (Все метки)

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

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
31
32
33
34
35
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
 
namespace ButtonRun
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            this.KeyDown += new System.Windows.Forms.KeyEventHandler(this.Form1_KeyDown); 
            this.KeyPreview = true;
 
        }
 
        private void button1_MouseEnter(object sender, EventArgs e)
        {
            Random rnd = new Random();
            button1.Location = new Point(rnd.Next(0,602), rnd.Next(0,336));
        }
 
        private void Form1_KeyDown(object sender, KeyEventArgs e)
        {
            if (e.KeyCode == Keys.Enter)
                MessageBox.Show("Нажали <ENTER>");
        }
    }
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
14.08.2014, 18:01
Ответы с готовыми решениями:

Как отследить нажатие двух клавиш на форме
Такие дела. Ищу литературу, мануалы, статьи, о работе с клавиатурой в сишарп. Тот мануал по...

Нажатие клавиши в форме
Как сделать отлов нажатия клавиши, вообще в программе, в целом? Так - не работает. private...

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

Отловить нажатие клавиши Enter в форме
private void button1_KeyDown(object sender, KeyEventArgs e) { if (e.KeyCode...

2
314 / 274 / 109
Регистрация: 27.09.2010
Сообщений: 1,058
14.08.2014, 19:59 2
Цитата Сообщение от p4ollka Посмотреть сообщение
Form1_KeyDown
Возможно потому что у вас на форме ещё куча контролов. Понимаете? Представьте себе лист желтой бумаги. Допустим это ваша форма. Вы видите лист целиком. А теперь представьте, что вы положили чуть по меньше листик красного цвета. Это некий контрол. Теперь вы не полностью видите желтый листик. Правильно? Точно также и с формой. Вы прикрутили событие на нажатие клавиши. Ок. Но оно работает там, где его не закрывают контролы. Теперь понятна ваша ошибка?
1
3 / 3 / 0
Регистрация: 09.02.2014
Сообщений: 20
14.08.2014, 20:14  [ТС] 3
Я разобралась, спасибо.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
14.08.2014, 20:14

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

Элементы на форме ловят нажатие на клавиши раньше формы
Здравствуйте, вот уже который день гуглю и нахожу только единственное решение данной...

Нажатие каждой клавиши должно отражаться нажатием соответствующих кнопок на форме
Ребят подскажите пожалуйста. Я недавно начал программировать, задача состоит в слудущем. Нужно...

Как присваивать горячие клавиши к примеру на выполнение нажатие клавиши
Народ. не могу найти, как в студии присваивать горячие клавиши к примеру на выполнение нажатие...

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


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

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

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