Главная страница
    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.46 MB
Время: 0.057 c
2-1169480316
Jimmy
2007-01-22 18:38
2007.02.11
Узнать, имеет ли Edit фокус


2-1169640221
СержК
2007-01-24 15:03
2007.02.11
Как в одном Memo сделать разноцветные надписи


5-1148464800
georgius
2006-05-24 14:00
2007.02.11
Как создать events у Frame или у Form?


4-1159431891
dima_shapkin
2006-09-28 12:24
2007.02.11
Системные иконки


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





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский