Главная страница
    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.46 MB
Время: 0.012 c
14-63306
Vlad Oshin
2003-12-26 10:21
2004.01.20
СВЯТОЕ ПИСЬМО :)


1-63115
Dude
2004-01-08 11:18
2004.01.20
Точная печать


11-63051
Nix
2003-05-04 18:48
2004.01.20
кол-во секций в Ini файле???


1-63078
Dublicator
2004-01-07 12:36
2004.01.20
Скрытие приложения


14-63394
reticon
2003-12-27 22:24
2004.01.20
Касательно Нового года...





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