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

Вниз

Как отлавить нажатие F1??   Найти похожие ветки 

 
Monak   (2003-10-30 21:22) [0]

Я пишу::::
procedure KeyF1(var message:TWMKEYDOWN); message WM_KEYDOWN;
var
key:byte;
begin
asm
mov al, 60h
mov Key, al
end;
showmessage(inttostr(key));
end;
Он постоянно выдаёт вне зависимости от клавиши "96", где я ошибся???


 
xia   (2003-10-30 22:13) [1]

я в шоке...
тело процедуры = showmessage("60")...

попробуй так:

procedure tform1.KeyF1(var message:TWMKEYDOWN);
var
key:byte;
ii:integer;
begin
if message.CharCode=112 then
showmessage(inttostr(message.CharCode));
end;


 
xia   (2003-10-30 22:13) [2]

я в шоке...
тело процедуры = showmessage("60")...

попробуй так:

procedure tform1.KeyF1(var message:TWMKEYDOWN);
begin
if message.CharCode=112 then
showmessage(inttostr(message.CharCode));
end;


 
Дубинин Алексей ©   (2003-11-01 21:45) [3]

Во время запуска своего приложения можно зарегистрировать эту клавишу через RegisterHotKey и отлавливать сообщение WM_HOTKEY.
Или можно установить глобальную ловушку и в ней отлавливать все что душа пожелает.
Или, самое простое: есть в дельфинской форме events OnKeyPress,
в этой процедуре определяешь переменную Key и сравниваешь ее с виртуальной клавишей VK_F1.
Просьба написать мне на почту, если что то помогло и что именно.


 
Semyon   (2003-11-02 11:28) [4]

При написания обработчика события на OnKeyPress, ничего не получится, т.к. это событие возникает только при нажатии на обычные клавиши, но не на управляющие. А для проверки нажатия F1 надо использовать событие OnKeyDown, и уже в нём сравнивать Key с VK_F1.


 
Дубинин Алексей ©   (2003-11-02 18:21) [5]


> При написания обработчика события на OnKeyPress, ничего
> не получится, т.к. это событие возникает только при нажатии
> на обычные клавиши, но не на управляющие. А для проверки
> нажатия F1 надо использовать событие OnKeyDown, и уже в
> нём сравнивать Key с VK_F1.

Согласен, просто не то указал, извиняюсь за ошибку и введение в заблуждение.


 
einsam   (2003-11-02 22:00) [6]

А еще для формы желательно установить в True свойство KeyPressed.


 
Геннадий ©   (2003-11-06 16:58) [7]


> einsam (02.11.03 22:00) [6]
> А еще для формы желательно установить в True свойство KeyPressed.


Имеется в виду KeyPreview = True? (извиняюсь, если неправильно набрал)



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

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

Наверх




Память: 0.48 MB
Время: 0.021 c
1-63101
Unknown
2004-01-10 22:42
2004.01.20
TWinControl


3-62993
dim-
2003-12-22 11:10
2004.01.20
как сделать рефреш чтобы меньше время тратилось


6-63273
Signed
2003-11-16 01:24
2004.01.20
Программно определить в чём неисправность


3-63002
ksan
2003-12-22 18:56
2004.01.20
ХП и пользователи


6-63269
Карелин Артем
2003-11-19 13:52
2004.01.20
Ftp-сервер на ICS. Как передавать/принимать потоки. Не файлы.