![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как вкл/выкл автоповтор символов при удержании клавиши клавиатуры [D7, WinXP]
Константинов © (2004-08-12 20:14:00)Нужно отловить момент нажатия и после длительного удержания момент отпускания клавиши.
я перехватываю 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 начинает это обрабатывать как нажатие клавиш. Как отключить на время работы программы автоповтор символов?
Заранее спасибо.
Константинов (2004-08-12 21:53:00) [1]Вот уж блин затормозил, так заторомзил.
Слов нет... проще некуда.
Большое спасибо!
VMcL (2004-08-12 20:27:00) [2]>> Константинов © (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;
?