Вниз
Скачать: CL | DM;

перехватывание сообщений   Найти похожие ветки 

 
Digi   (2002-07-17 04:15) [0]

Доброй ночи!
Подскажите, плиз, как перехватить какое-нибудь сообщение посылаемое в стринггрид, который лежит на форме.
Сообщения, которые посылаются форме, я перехватить могу, а, которые посылается в стринггрид, не могу ... если не сложно, то привидите пример. Заранее спасибо.


 
Song ©   (2002-07-17 12:12) [1]

Надо сделать наследника и описать для него процедуры с перехватываемыми сообщениями.


 
Digi   (2002-07-17 14:42) [2]


> Song © (17.07.02 12:12)
> Надо сделать наследника и описать для него процедуры с перехватываемыми
> сообщениями.


А как мне потом этот клас-наследник на форму положить? Его надо будет регистрировать как новый компонент?


 
Игорь Шевченко ©   (2002-07-17 15:01) [3]

Не надо ничего делать.

Описываете в форме
private
FOldGridWndProc : TWndMethod;
procedure GridWndProc (var Message : TMessage);
...
end;

В событии OnCreate формы пишете:

with StringGrid1 do begin
FOldGridWndProc := WindowProc;
WindowProc := GridWndProc;
end;

и, соответствено
procedure TForm1.GridWndProc(var Message: TMessage);
begin
if (Message.Msg = то, что надо) then begin
...
end;
FOldGridWndProc (Message);
end;

С уважением,



 
Song ©   (2002-07-17 15:04) [4]

Можно и так :-)


 
Digi   (2002-07-17 16:25) [5]


> Игорь Шевченко ©


Большое спасибо!



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.009 c
1-95422
Alibaba
2002-07-16 15:12
2002.07.29
Свой тип


3-95247
bobby_n
2002-07-07 22:11
2002.07.29
ADO и DBGrid


1-95344
KIR
2002-07-18 10:59
2002.07.29
---|Ветка была без названия|---


3-95235
User_OKA
2002-07-04 07:52
2002.07.29
Деревья SQL


14-95566
Извращенец
2002-06-28 16:57
2002.07.29
Музика для игры типа Энигматики




   Наверх