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

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

Вернуться   Форум программистов > Delphi программирование > Lazarus, Free Pascal, CodeTyphon
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 15.04.2018, 00:52   #1
Максим_maks
Пользователь
 
Регистрация: 18.01.2015
Сообщений: 51
По умолчанию Отловить нажатие клавиши с проверкой

Всем привет. Столкнулся с проблемой: не могу отловить и правильно проверить нажатую клавишу.

Есть CheckBox1 и ComboBox1 и необходимо отловить нажатие кнопки и сделать действия, но выдает ошибку:

Проверяю так:
Код:
  if RadioButton1.Checked=True and RadioButton7.Checked=True and ComboBox1.text='F5' and Form1.UTF8KeyPress(VK_F5) then
    begin  
     StatusBar1.Panels[0].Text :=('Нажать F5');
       ....... // остальной код

     end;
Выдает ошибку: unit1.pas(322,114) Error: Call by var for arg no. 1 has to match exactly: Got "ShortInt" expected "TUTF8Char"
Максим_maks вне форума Ответить с цитированием
Старый 15.04.2018, 01:06   #2
Максим_maks
Пользователь
 
Регистрация: 18.01.2015
Сообщений: 51
По умолчанию

Даже такой код не канает (((

Код:
(RadioButton1.Checked and RadioButton7.Checked) and KeyInput.Down(VK_F10)  then
Ошибка
unit1.pas(322,54) Error: Operator is not overloaded: "Boolean" and "untyped"
Максим_maks вне форума Ответить с цитированием
Старый 15.04.2018, 01:16   #3
Максим_maks
Пользователь
 
Регистрация: 18.01.2015
Сообщений: 51
По умолчанию

Нашел решение, помогите если не сложно дописать обработчик:
Неоюходимо при выборе нужного чекбокса ожидать нажатия клавиши из группы F1 или F2 и т.д.

Что сделал, в главную форму добавил
Код:
procedure TForm1.FormCreate(Sender: TObject);
begin
  Form1.KeyPreview:=True;  
end;
В form1.KeyDown

Код:
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState
  );
begin    

if Key = VK_F10 then begin 
... /код
end;
По кнопке должно проверяться условие: если чекбокс =true, тогда ожидаем нажатие клавиши и если клавиша нажата выполняем условие. СПАСИБО
Максим_maks вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Отловить нажатие клавиши volverine Общие вопросы Delphi 5 02.07.2013 01:58
отловить нажатие клавиши ctrl kaljan775 Общие вопросы C/C++ 4 31.10.2011 23:39
отловить нажатие клавиши ctrl kaljan775 Помощь студентам 0 30.10.2011 17:20
Долгое нажатие клавиши в KeyDown как одно нажатие marina15056 Общие вопросы Delphi 7 16.08.2009 00:22
отловить нажатие клавиши в ячейке (до нажатия enter) loginrl103 Microsoft Office Excel 3 07.08.2009 15:10