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

Вниз

Как в моём компоненте перехватить сообщение Parent?   Найти похожие ветки 

 
MegaVolt ©   (2007-01-24 17:09) [0]

ListView при некоторых условиях посылает сообщение WM_MeasureItem причём посылает его компоненту назначенному в ListView.Parent

Как поймать это сообщение из самого компонента?


 
MegaVolt ©   (2007-01-25 10:44) [1]

Если вопрос перенесен в раздел начинающим значит вопрос просто детский. С другой стороны судя по отсутствию массы ответов вопрос не так прост?


 
Elen ©   (2007-01-25 10:52) [2]


> С другой стороны судя по отсутствию массы ответов вопрос
> не так прост?

Это только догадка но : попробуй описать чтонить вроде procedure q(var m:Tmsg); messsage WM_MeasureItem и там уже анализируй кто чего послал, если не ListView передавай ход сообщения дальше по цепочке...


 
B.B. ©   (2007-01-25 11:23) [3]

Ты можешь заменить оконную процедуру парента на свою
Только очень аккуратно - не забыть запомнить указатель на его родную процедуру, и вызвать из своей.
Также видимо придется обрабатывать нотификации - на случай смены парента.
А может, в VCL есть какой то другой механизм - на вскидку не помню


 
Игорь Шевченко ©   (2007-01-25 11:33) [4]


> ListView при некоторых условиях посылает сообщение WM_MeasureItem
> причём посылает его компоненту назначенному в ListView.Parent
>
> Как поймать это сообщение из самого компонента?


Обработать CN_MeasureItem ?


 
MegaVolt ©   (2007-01-25 12:23) [5]

CN_MeasureItem неприходит :(


 
Игорь Шевченко ©   (2007-01-25 12:37) [6]

MegaVolt ©   (25.01.07 12:23) [5]


> CN_MeasureItem неприходит :(


Странно. Сообщение WM_MeasureItem приходящее WinControl"у преобразуется в CN_MeasureItem и посылается дочернему окну процедурой Controls.DoControlMsg


 
MegaVolt ©   (2007-01-25 12:52) [7]

Игорь Шевченко огромное спасибо :) Я проверял приходит ли CN_MeasureItem при включенном обработчике WM_MeasureItem. А так как сообщение обработано то дальше оно не пересылалось.

Спасибо. Вопрос решен :)



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

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

Наверх




Память: 0.48 MB
Время: 0.028 c
3-1163750618
AlexSt
2006-11-17 11:03
2007.02.11
Отслеживание изменений другим пользователем


15-1169144266
iXT
2007-01-18 21:17
2007.02.11
RUS vs ENU


2-1169440828
Генрих
2007-01-22 07:40
2007.02.11
Memo и номер строки


3-1163662919
oracle.nooby
2006-11-16 10:41
2007.02.11
Oracle через ADO


15-1168953290
iXT
2007-01-16 16:14
2007.02.11
HP Compaq nx7400