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

Вниз

Определить нажатие кнопки   Найти похожие ветки 

 
i2e   (2013-08-16 12:38) [0]

Как отловить событие нажатия кнопки, в главной форме? Событие формы OnKeyDown не вызывается когда фокус находится на каком-либо элементе, например, в строке Edit.
И когда-то уже такое делал, а как - вспомнить не могу..


 
[ВладОшин] ©   (2013-08-16 13:11) [1]

KeyPreview


 
i2e   (2013-08-16 13:23) [2]

нарыл на форуме http://rpdn.ru/forum/25/198/

type
 TForm1 = class(TForm)
   ...
   procedure OnTABPress(Var Msg: TWMKey); message CM_DIALOGKEY;

...

procedure TForm1.OnTABPress(Var Msg: TWMKEY);
begin
if (ActiveControl is TEdit) and (Msg.Charcode = VK_TAB) then ShowMessage("Нажата клавиша TAB");
inherited;
end;


Проверил, работает.


 
ProgRAMmer Dimonych ©   (2013-08-16 13:48) [3]

> [2] i2e   (16.08.13 13:23)

А мусьи там знают толк.


 
[ВладОшин] ©   (2013-08-16 14:06) [4]

да, с ТАБ, походу, только так
можно посмотреть как в TCustomForm реализовано (почти также :)
т.е.
 public      { Public declarations }
   procedure CMDialogKey(var Message: TCMDialogKey);  message CM_DIALOGKEY;
 end;


 
[ВладОшин] ©   (2013-08-16 14:06) [5]

а зачем, кстати это надо может быть вообще?


 
stas ©   (2013-08-16 17:24) [6]

Можно использовать ActionList и не морочить голову.


 
i2e   (2013-08-19 06:41) [7]

свойство KeyPreview - в моем случае оказался самый простой к реализации вариант.
его и оставил. всё получилось.



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

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

Наверх




Память: 0.47 MB
Время: 0.005 c
8-1233235956
Кошкин
2009-01-29 16:32
2014.06.08
оцените модель головы


2-1376633430
mfender
2013-08-16 10:10
2014.06.08
Странности SetLength


15-1385393065
Абориген
2013-11-25 19:24
2014.06.08
Простая задачка


2-1376904919
Дмитрий
2013-08-19 13:35
2014.06.08
Множество. ЯП делфи 7


1-1325512087
S-C-L
2012-01-02 17:48
2014.06.08
Баг при работе с областью памяти