Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 28.10.2009, 20:59   #1
Evgenii
Форумчанин
 
Аватар для Evgenii
 
Регистрация: 04.01.2008
Сообщений: 201
По умолчанию коды клавиш-?

Подскажите, какой код у клавиш F1, F2, F3, F4?
Key=VK_F1 не подходит-выдает ошибку о несовместимости типов
Evgenii вне форума Ответить с цитированием
Старый 28.10.2009, 21:24   #2
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

А так трудно узнать?
Код:
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
Label1.Caption:=IntToStr(Ord(key));
end;
mihali4 вне форума Ответить с цитированием
Старый 28.10.2009, 21:31   #3
Evgenii
Форумчанин
 
Аватар для Evgenii
 
Регистрация: 04.01.2008
Сообщений: 201
По умолчанию

этот же код писал в событии onkeypress безрезультатно. А в keydown работает). Получилось что код F1 равен 112. Задал такое условие в программе: if key=#112 then imege1.visible:=false;
Но почему то при нажатии клавиши F1 никакой реакции не последовало. В чем тут может быть проблема?
Evgenii вне форума Ответить с цитированием
Старый 28.10.2009, 21:34   #4
856100
Форумчанин
 
Регистрация: 12.08.2008
Сообщений: 135
По умолчанию

Использовать обработчик keydown и набор констант. Например:
Код:
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
If Key=VK_F1 then Close;
end;
Будь проще, бери пример с одноклеточных
856100 вне форума Ответить с цитированием
Старый 28.10.2009, 21:35   #5
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

Цитата:
Сообщение от Evgenii Посмотреть сообщение
Получилось что код F1 равен 112. Задал такое условие в программе: if key=#112 then imege1.visible:=false;
Но почему то при нажатии клавиши F1 никакой реакции не последовало. В чем тут может быть проблема?
В каком месте программы это задается? По FormKeyPress ?
mihali4 вне форума Ответить с цитированием
Старый 28.10.2009, 21:40   #6
Evgenii
Форумчанин
 
Аватар для Evgenii
 
Регистрация: 04.01.2008
Сообщений: 201
По умолчанию

Задавал в
Код:
procedure TForm5.FormKeyPress(Sender: TObject; var Key: Char);
получил код 112. При использовании этого кода, нужное действие не выполняется при нажатии F1
Evgenii вне форума Ответить с цитированием
Старый 28.10.2009, 21:43   #7
Evgenii
Форумчанин
 
Аватар для Evgenii
 
Регистрация: 04.01.2008
Сообщений: 201
По умолчанию

вот кстати с VK_F1 в keydown получилось)). Я просто использовал не в том месте. Спасибо 856100
Evgenii вне форума Ответить с цитированием
Старый 28.10.2009, 21:48   #8
Вавел из ГМТУ
Форумчанин
 
Регистрация: 19.06.2009
Сообщений: 896
По умолчанию

procedure TForm5.FormKeyPress(Sender: TObject; var Key: Char);

procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word);

В то время F1 это два байта, а любая другая(символьная) клавиша одинг байт.

Какбы неудивительно, что что FormKeyPress вобще не реагирует.
Вавел из ГМТУ вне форума Ответить с цитированием
Старый 28.10.2009, 22:00   #9
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

f1 помоему считается вообще системной клавишей.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ASCII коды Strogg Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 2 03.04.2009 17:09
Коды клавиш и символов в Дельфи DeKot Общие вопросы Delphi 2 24.11.2008 08:21
Вывести ASCII и SCAN -коды клавиш... StudentBTI Помощь студентам 7 07.10.2008 22:01
Коды клавиш valerij Microsoft Office Excel 0 20.08.2008 07:49
Коды клавиш KAMASUTR Gamedev - cоздание игр: Unity, OpenGL, DirectX 11 09.08.2007 22:25