Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2002.09.05;
Скачать: [xml.tar.bz2];

Вниз

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

 
Митяй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 вся ветка

Форум: "WinAPI";
Текущий архив: 2002.09.05;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.44 MB
Время: 0.007 c
14-14223
AlexKniga
2002-08-09 09:26
2002.09.05
{********Help!!!********Помогите!!!********}


14-14254
Torn
2002-08-11 15:15
2002.09.05
TWebBrowser


3-13884
restless
2002-08-09 15:30
2002.09.05
Повернуть DBNavigator


1-14092
peter_login
2002-08-23 13:46
2002.09.05
TMemo (TCustomMemo)


3-13945
Vlad2
2002-08-16 06:49
2002.09.05
Проектирование БД





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский