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

Вниз

Как отлавить нажатие 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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.009 c
3-62960
Ermek
2003-12-25 01:36
2004.01.20
IbExpert


7-63416
Tifon
2003-11-05 14:20
2004.01.20
Подключение сканера!!!


14-63401
ИМХО
2003-12-27 20:02
2004.01.20
Футбол. Англия. Премьер-Лига. Трудоголики.


14-63333
Шишкин Илья
2003-12-30 17:51
2004.01.20
Универсальный Отгадчик


1-63141
skt888
2004-01-07 07:10
2004.01.20
String в WideString





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский