Форум программистов, компьютерный форум, киберфорум
Наши страницы
C# Windows Forms
Войти
Регистрация
Восстановить пароль
 
Fene4ka_
102 / 102 / 40
Регистрация: 24.01.2014
Сообщений: 1,244
1

Нажатие клавиш клавиатуры

15.12.2015, 15:13. Просмотров 342. Ответов 1
Метки нет (Все метки)

Подскажите, пожалуйста, как сделать, чтобы по нажатию ондовременно двух клавиш, событие срабатывало на клавишу, у которой скан-код больше?
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
using System;
using System.Windows.Forms;
 
namespace EmulaitonKeybord
{
    public partial class Form1 : Form
    {
        public char key { get; private set; }
        public bool flag { get; private set; }
        public Form1()
        {
            InitializeComponent();
            flag = true;
        }
 
        private void button1_Click(object sender, EventArgs e) {
            textBox1.Text += (sender as Button).Text;
        }
 
        private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
        {
            e.Handled = true;
            for (int i = 0; i < panel1.Controls.Count; i++)
            {
                if (panel1.Controls[i].GetType().ToString().Equals("System.Windows.Forms.Button") &&
                    e.KeyChar.ToString().ToLower().Equals(((Button) panel1.Controls[i]).Text) && flag) {
                    textBox1.Text += e.KeyChar.ToString();
                    key = e.KeyChar;
                    flag = false;
                    timer2.Enabled = true;
                }
            }
        }
 
        private void timer1_Tick(object sender, EventArgs e) {
            textBox1.Text += key.ToString();
        }
 
        private void textBox1_KeyUp(object sender, KeyEventArgs e) {
            timer1.Enabled = false;
            timer2.Enabled = false;
            flag = true;
        }
 
        private void timer2_Tick(object sender, EventArgs e) {
            timer1.Enabled = true;
            timer2.Enabled = false;
        }
    }
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.12.2015, 15:13
Ответы с готовыми решениями:

Нажатие нескольких клавиш
В форме понадобилось обрабатывать нажатие сразу нескольких клавиш, допустим не...

Автомат(нажатие клавиш 1-2)
Кто нибудь может помочь с кодом: Нужно сделать так чтобы нажимались следующие...

Одновременное нажатие клавиш
Здравствуйте. Столкнулся с проблемой. Кнопки на форме связаны с клавишами...

Нажатие сочетания клавиш из программы
Хочу создать программу, которая сама будет нажимать сочетание клавиш Ctrl +...

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

1
kpNemo
13 / 13 / 5
Регистрация: 21.01.2015
Сообщений: 124
Завершенные тесты: 5
15.12.2015, 15:38 2
Посмотрите событие PreviewKeyDown, в нём получите две кнопки, сравните и т.д.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.12.2015, 15:38

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

Отловить нажатие клавиш в приложении
не знаю может мозгов(не спорю, в с# не очень знаю, новичок) нужно реализовать...

Нажатие клавиш в неактивном окне
Hello, ребят, суть вопроса такова. Можно ли как либо эмулировать нажатие...


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

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

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