Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.04.08;
Скачать: CL | DM;

Вниз

Key_Hook и зажатие клавиши   Найти похожие ветки 

 
SerMax ©   (2006-11-19 15:29) [0]

Пишу программу, отлавливающую все нажатия клавиш в системе (хочу уровень громкости менять с клавиатуры :)
Хотелось бы знатЬ, можно ли отследить ЗАжатие обычной клавиши (например "g").
Вот есть часть кода :

function Key_Hook(Code: integer; wParam: word; lParam: Longint): Longint;stdcall; export;
var ch:char;
begin
ch:=chr(wParam);
if HiWord(GetKeyState(VK_MENU)) <> 0 then
begin
if HiWord(GetKeyState(VK_CONTROL)) <> 0 then
if (ch="g") or (ch="G") then
begin
ShowMessage("Nazali ALT+CTRL+g!!!");
end;
end;

Я зажимаю ALT+CTRL+g....если g ЗАжата (я её не отпускаю), то выводится сообщение ShowMessage("Nazali ALT+CTRL+g!!!");
Мне надо, чтобы это окно выводилось только пРИ ПЕРВОМ нажатии...и при следующих. Но никак не в случае, когда клавиша просто нажата и не отпускается.
Вроде бы lParam отвечает за длительность нажатия....я пишу :
if (LoWord(lParam)=1) then   //если нажали и сразу отпустили.
Но это не помогает !
Помогите, кто чем может !


 
Anatoly Podgoretsky ©   (2006-11-19 15:48) [1]

> SerMax  (19.11.2006 15:29:00)  [0]

Клавиатура работает с автоповтором, или удаляй автоповтор или вводи проверку на первое нажатие и отжатие.


 
SerMax ©   (2006-11-19 18:02) [2]

Так вся суть и состоит в тоМ, КАК ЭТО СДЕЛАТЬ ? !


 
Elen ©   (2006-11-20 08:53) [3]


> хочу уровень громкости менять с клавиатуры :)

Делай как в ВинАмпе - регистрируй свою Hot Key.



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

Текущий архив: 2007.04.08;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.032 c
15-1173772062
In/Out
2007-03-13 10:47
2007.04.08
Регрессионный анализ???


15-1172580809
Alex Konshin
2007-02-27 15:53
2007.04.08
Трассировка exception в Delphi


15-1173767033
ProgRAMmer Dimonych
2007-03-13 09:23
2007.04.08
Нужен совет...


1-1171379304
Вопрошающий
2007-02-13 18:08
2007.04.08
Новые диалоги Vista для открытия и сохранения файлов


15-1173882328
eXPell
2007-03-14 17:25
2007.04.08
Как бы вы поступили?