Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.82/11: Рейтинг темы: голосов - 11, средняя оценка - 4.82
3 / 3 / 2
Регистрация: 17.11.2014
Сообщений: 194

Keydown - нажатие любой клавиши клавиатуры

26.06.2016, 13:48. Показов 2248. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток! Идея состоит в том, что бы при нажатии любой клавиши клавиатуры, присутствующий на форме timer - который бы запускался автоматически при открытии формы - обнулялся, каждый раз при нажатии на клавишу клавиатуры - любой. Начал писать, но найти элемент ВСЕ я не смог думаю, не совсем правильно перечислять каждую клавишу, может быть можно как то это решить? - наработка на данный момент:
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
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Diagnostics;
namespace imbrera
{
    public partial class Form1 : Form
    {
        Timer timer = new Timer();
        int timerCounter = 0; //счётчик для таймера
         public Form1()
        {
 
            InitializeComponent();
            timer.Interval = 1000; //интервал между срабатываниями 1000 миллисекунд
            timer.Tick += new EventHandler(timer_Tick); //подписываемся на события Tick
            timer.Start();
        }
 
        private void Form1_Load(object sender, EventArgs e)
        {
  
            timer1.Start();
           /* Process.Start("Notepad.exe");
            bool isSuspend = Application.SetSuspendState(PowerState.Suspend, true, true);
            */
       
        }
 
            
        protected override void OnKeyDown(KeyEventArgs e)
{
    switch (e.KeyCode)
    {
          
        case Keys.D0:
            timerCounter = 0;
            break;
        case Keys.A:
            timerCounter = 0;
            break;
        case Keys.D1:
            timerCounter = 0;
            break;
        case Keys.D2:
            timerCounter = 0;
            break;
    }
 
    base.OnKeyDown(e);
 
        }
        void timer_Tick(object sender, EventArgs e)
        {
            //В текстбокс выводим значение timerCounter увеличенное на 1
            this.label1.Text = (++timerCounter).ToString();
                 }
    }
}
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
26.06.2016, 13:48
Ответы с готовыми решениями:

Как вызвать KeyDown при повторном нажатии клавиши с клавиатуры?
private void Form1_KeyDown_1(object sender, KeyEventArgs e) { Graphics g = this.CreateGraphics(); int...

Событие на однократное нажатие клавиши клавиатуры
Добрый день, у меня вопрос, как сделать так, чтобы клавиша W реагировала лишь на однократное её нажатие (то есть чтобы метод game.Shot()...

KeyDown не обрабатывает 3 клавиши
вот код: if (Control.ModifierKeys == Keys.Control && Control.ModifierKeys == Keys.Alt && e.KeyCode == Keys.C) { ...

2
979 / 874 / 350
Регистрация: 26.04.2012
Сообщений: 2,647
26.06.2016, 14:07
А что мешает написать просто:
C#
1
2
3
4
       protected override void OnKeyDown(KeyEventArgs e)
{
timerCounter = 0;
}
?
1
3 / 3 / 2
Регистрация: 17.11.2014
Сообщений: 194
26.06.2016, 15:28  [ТС]
Капец.. Действительно, работает - спасибо
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
26.06.2016, 15:28
Помогаю со студенческими работами здесь

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

Глобальные горячие клавиши не работают через событие KeyDown
Как создать 2 глобальные горячие клавиши, я создал функцию на форме KeyDown и написал туда if(e.Shift){ ...

Отловить нажатие клавиши клавиатуры из другого аккаунта Windows
Может, вопрос глупый, но задам... Пишу на C#. Устанавливаю глобальный хук на клавиатуру. Все нажатия клавиш клавиатуры отлично...

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

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


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
Оттенки серого
Argus19 18.03.2026
Оттенки серого Нашёл в интернете 3 прекрасных модуля: Модуль класса открытия диалога открытия/ сохранения файла на Win32 API; Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru