Как отловить системное событие? [решено]

Вопросы программирования и использования MSEide + MSEgui.

Модератор: Модераторы

Как отловить системное событие? [решено]

Сообщение t-ea » 05.12.2013 13:01:03

Как отловить системное событие типа wm_XXXX?

Следующий тестовый код у меня не работает, то есть при нажатии клавиш счётчик не увеличивается.
Код: Выделить всё
type
tmainfo = class(tmainform)
   dsp: tintegerdisp;
   procedure wmkeydown(var Msg: TMessage); message wm_KeyDown;
end;

procedure tmainfo.wmkeydown(var Msg: TMessage);
begin
dsp.Value:=dsp.Value + 1;
end;


Где/что/как исправить?
Последний раз редактировалось t-ea 06.12.2013 13:03:14, всего редактировалось 1 раз.
t-ea
новенький
 
Сообщения: 98
Зарегистрирован: 22.09.2006 00:22:34

Re: Как отловить системное событие?

Сообщение debi12345 » 05.12.2013 16:32:42

procedure wmkeydown(var Msg: TMessage); message wm_KeyDown;

А что - консольные проги умеют отлавливать GUI-события ? Возможно в Вашем (GUI) случае нужен перехватичик "tmseforn.OnKeyDown" (есть в инспекторе объектов).
Аватара пользователя
debi12345
долгожитель
 
Сообщения: 5752
Зарегистрирован: 10.05.2006 23:41:15
Откуда: Ташкент (Узбекистан)

Re: Как отловить системное событие?

Сообщение mse » 05.12.2013 20:02:29

There is tform.onsysevent and tform.onsyswindowevent, add mseguiintf to uses. Not recommended because it is platform dependent and can affect performance. Better to use tform.onkeydown as debi12345 writes.
mse
новенький
 
Сообщения: 68
Зарегистрирован: 08.08.2013 15:40:31

Re: Как отловить системное событие?

Сообщение t-ea » 05.12.2013 22:46:48

WM_KEYDOWN просто для теста, чтобы посмотреть почему не работает тот код, который мне нужен.
В программе предполагаю использовать WM_DEVICECHANGE.
t-ea
новенький
 
Сообщения: 98
Зарегистрирован: 22.09.2006 00:22:34

Re: Как отловить системное событие?

Сообщение mse » 05.12.2013 23:16:25

OK, please try "onsysevent".
mse
новенький
 
Сообщения: 68
Зарегистрирован: 08.08.2013 15:40:31

Re: Как отловить системное событие? [решено]

Сообщение Jack02 » 22.01.2014 13:00:29

create an integer field which holds the color index, possibly it is a fkCalculated or fkInternalCalc field.
Jack02
незнакомец
 
Сообщения: 1
Зарегистрирован: 22.01.2014 12:50:30


Вернуться в MSEide + MSEgui

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1

Рейтинг@Mail.ru