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

Как вкл/выкл автоповтор символов при удержании клавиши клавиатуры   Найти похожие ветки 

← →
Константинов ©   (2004-08-12 20:14) [0]

Нужно отловить момент нажатия и после длительного удержания момент отпускания клавиши.

я перехватываю Application.OnMessage

пишу:

procedure TForm3.MyMessage(var Msg: TMsg; var Handled: Boolean);
begin
 Handled := false;
 case Msg.message of
 WM_KEYDOWN: begin
 if MSG.wParam = VK_SPACE then   ...
 WM_KEYUP:   begin
 if MSG.wParam = VK_SPACE then   ...  
end;
end;

Включается автоповтор и MyMessage начинает это обрабатывать как нажатие клавиш. Как отключить на время работы программы автоповтор символов?

Заранее спасибо.


← →
VMcL ©   (2004-08-12 20:27) [1]

>>Константинов ©  (12.08.04 20:14)

private
 FSpaceDown: Boolean;
...
WM_KEYDOWN:
 if (MSG.wParam = VK_SPACE) and not FSpaceDown then
 begin
   FSpaceDown := True;
   ...
 end;

WM_KEYUP:  begin
 if MSG.wParam = VK_SPACE then
 begin
   FSpaceDown := False;
   ...
 end;


?


← →
Константинов ©   (2004-08-12 21:53) [2]

Вот уж блин затормозил, так заторомзил.
Слов нет... проще некуда.
Большое спасибо!



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

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



Память: 0.45 MB
Время: 0.02 c
1-1094707455
user1
2004-09-09 09:24
2004.09.26
Процедура открытия модального окна


1-1094546741
Black
2004-09-07 12:45
2004.09.26
Как создать копию Form


14-1094693656
Думкин
2004-09-09 05:34
2004.09.26
С днем рождения! 9 сентября


1-1095016396
bloodman
2004-09-12 23:13
2004.09.26
Возможно ли изменение состояния кнопки ?


1-1095052021
pavel777
2004-09-13 09:07
2004.09.26
DLL_PROCESS_DETACH




   Наверх