Вниз
Скачать: CL | DM;

Всё скрытое когда-нибудь становится явным....   Найти похожие ветки 

← →
Митяй2 ©   (2002-07-06 09:33) [0]

Мастера, подскажите как в ловушке клавы
определить что произошло:
- нажали клавишу?
- отпустили клавишу?
- идёт повтор символов, когда клавиша нада

function Key_Hook(Code: integer; wParam: word; lParam: Longint): Longint;stdcall; export;
begin
// если Code>=0, то ловушка может обработать событие
if (Code >= 0) then
begin
if wParam=VK_CONTROL then // Отлавливаем только Ctrl
Begin
if (lParam and KF_UP)=KF_UP then // код отпускания (НЕ ПРОКАНЫВАЕТ!!!!!!!!!!)
begin
....

....

....


← →
Митяй2 ©   (2002-07-06 09:48) [1]

Опечатка - идёт повтор символов, когда клавиша нада
Нужно читать - идёт повтор символов, когда клавиша нажата


← →
Митяй2 ©   (2002-07-06 11:33) [2]

Всё МАСТЕРА, можете не отвечать сам разобрался методом научного тыка.

В lParam 2-ой байт (нумерация с 0) - scan code,
а биты 6 и 7 в 3-ем байте отвечают за происходящее.

нажатие

if (lParam and $40000000)=0 then <нажатие>
1 1101 0000 0000 0000 0001 (Ctrl, scan=11101)
10 0000 0000 0000 0000 0001 ("d" , scan=100000)


отпускание

if (lParam and $80000000)=$80000000 then <отпускание>
1100 0000 0001 1101 0000 0000 0000 0001
1100 0000 0010 0000 0000 0000 0000 0001



повтор
if (lParam and $80000000)=0 AND (lParam and $40000000)=$40000000 then <повтор>
100 0000 0001 1101 0000 0000 0000 0001
100 0000 0010 0000 0000 0000 0000 0001


← →
Митяй2 ©   (2002-07-06 11:34) [3]

И заходите:

http://altnet.ru/~rus

НЕ ПОЖАЛЕЕТЕ! Посмеётесь от души!



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.01 c
14-14275
Anatoly Shkodin
2002-08-10 11:42
2002.09.05
QII и QIII


14-14212
AL2002
2002-08-08 17:08
2002.09.05
Так есть прога, которая с дайджестами работает?


1-14058
nh
2002-08-23 11:45
2002.09.05
RXLib


14-14245
jonik pegas
2002-08-08 12:14
2002.09.05
А что вообще есть .NET?


3-13889
Igel
2002-08-14 11:40
2002.09.05
Как в БД Access использовать картинки?




   Наверх