Sadda.ru Ironetcart Андроид Ассемблер MASM32 Linux Все статьи Table of Contents


 

События консоли (таблица)

  Макс Петров май 2013

      API-функция ReadConsoleInput (PeekConsoleInput) сохраняет по переданному ей адресу буфера (lpBuffer) массив значений - запись о событии. Для событий клавиатуры нулевой байт записи всегда равен 1, для событий мыши - 2. Состояние некоторых из 20 байт записи о событии клавиатуры или мыши в зависимости от действий пользователя приведено в нижеследующих таблицах (в десятичном формате).

      В 16 байте (нумерация байтов с нуля) записи о событии клавиатуры состояние управляющих клавиш передается в флаговом представлении (каждому биту сопоставлена клавиша), если флаг (бит) равен 1, значит, клавиша нажата или соответствующая опция включена. Значения флагов таковы:
      0 бит - Alt правый;
      1 бит - Alt левый;
      2 бит - Strl правый;
      3 бит - Strl левый;
      4 бит - Shift любой;
      5 бит - Num Lock;
      6 бит - Scroll Lock;
      7 бит - Caps Lock.

Таблица. События клавиатуры

клавишабайт 0байт 4байт 10байт 14байт 15байт 16
Esc1 1 - KeyPress
0 - KeyDown
27270 1 - Alt правый
+
2 - Alt левый
+
4 - Strl правый
+
8 - Strl левый
+
16 - Shift любой
+
32 - Num Lock
+
64 - Scroll Lock
+
128 - Caps Lock
F1111200
F2111300
F3111400
F4111500
F5111600
F6111700
F7111800
F8111900
F9112000
F10112100
F11112200
F12112300
1149код символа (49)0
2150код символа (50)0
3151код символа (51)0
4152код символа (52)0
5153код символа (53)0
6154код символа (54)0
7155код символа (55)0
8156код символа (56)0
9157код символа (57)0
0148код символа (48)0
-1189код символа (45)0
=1187код символа (61)0
Backspace18код символа (8)0
Enter113код символа (13)0
пробел132код символа (32)0
Tab19код символа (9)0
Тильда (Ё)1192DOS-код символа 0 - латин.
4 - кирилл.
Q181DOS-код символа
W187DOS-код символа
E169DOS-код символа
R182DOS-код символа
T184DOS-код символа
Y189DOS-код символа
U185DOS-код символа
I173DOS-код символа
O179DOS-код символа
P180DOS-код символа
[1219DOS-код символа
]1221DOS-код символа
A165DOS-код символа
S183DOS-код символа
D168DOS-код символа
F170DOS-код символа
G171DOS-код символа
H172DOS-код символа
J174DOS-код символа
K175DOS-код символа
L176DOS-код символа
;1186DOS-код символа
'1222DOS-код символа
\1220код символа0
Z190DOS-код символа 0 - латин.
4 - кирилл.
X188DOS-код символа
C167DOS-код символа
V186DOS-код символа
B166DOS-код символа
N178DOS-код символа
M177DOS-код символа
,1188DOS-код символа
.1190DOS-код символа
/1191DOS-код символа0
Scroll Lock114500
Insert14500
Home13600
Delete14600
End13500
Page Down13400
стрелка влево13700
стрелка вверх13800
стрелка вправо13900
стрелка вниз14000
Num Lock114400
/ (цифр.)1111код символа (47)0
* (цифр.)1106код символа (42)0
- (цифр.)1109код символа (45)0
+ (цифр.)1107код символа (43)0
Enter (цифр.)113код символа (13)0

Таблица. События мыши

кнопка байт 0 байт 4 байт 6 байт 8 байт 10 байт 16
кнопки не нажаты 2 горизонтальная
координата
(0-79)
вертикальная
координата
(0-255)
0 0 1
левая кнопка нажата 2 1 0 0
правая кнопка нажата 2 2 0 0
левая и правая нажаты 2 3 0 0
колесо нажато 2 4 0 0
колесо крутится "от себя" 2 0 120 4
колесо крутится "на себя" 2 0 136 4
двойной клик левой 2 1 0 2
двойной клик правой 2 2 0 2
двойной клик колесом 2 4 0 2

     


Добавить комментарий

E-mail:
*


Контрольные цифры:



Ассемблер MASM32

      Простейшая программа на ассемблере (beeper)
      Переменные и типы данных ассемблера
      Регистры процессора IA32
      Консоль ввода-вывода
      API-функция CharToOem и строки ассемблера
      API-функция ReadConsoleInput
      API-функция PeekConsoleInput
      События консоли (таблица)
      Системы счисления, тэги ассемблера, перевод чисел
      Отрицательные числа
      Инкремент и декремент
      Деление (DIV, IDIV)
      VKDEBUG
      Макросы ассемблера
      Воспоминание об Альгамбре на системном динамике
      Командная строка
      Пузырьковая сортировка. Эстафета шариков
      Сортировка расческой
      Быстрая сортировка

     


© Max Petrov При использовании материалов ссылка на sadda.ru обязательна