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

Вниз

Сообщения определенному окну   Найти похожие ветки 

 
Akni ©   (2002-10-03 16:36) [0]

Уважаемые Знатоки!
Помогите, пожалуйста, разобаться с таким вопросом:
как отловить все сообщения (т.е. самому окну и всем элементам, которые ему принадлежат), посланные одному определенному MDI-окну приложения? Пробовала с TApplicationEvents.OnMessage, но он ловит сообщения всем формам приложения.
И еще: можно ли по Handl"у определить имя компонента, не перебирая все компоненты, которые находятся на форме?


 
Игорь Шевченко ©   (2002-10-03 16:45) [1]

Первое лучше сделать заменой WndProc у требуемого окна и всех его компонентов.

Второе через функцию FindVclWindow из Controls.pas

С уважением,


 
Akni ©   (2002-10-03 17:05) [2]

В том-то и дело, что на окне лежит куча компонентов, в том числе фреймы, на которых в свою очередь тоже лежит куча компонентов.
Нельзя ли каким-нибудь универсальным методом?


 
Игорь Шевченко ©   (2002-10-03 17:29) [3]

Можно.
Написать перебор всех наследников TWinControl на форме и поменять у них свойство WindowProc на регистратор, не забыв сохранить старую оконную процедуру. Уже полгода я этим методом успешно пользуюсь для трассировки сообщений. Этот способ хорош тем, что позволяет ловить практически все сообщения, а не только посылаемые по PostMessage через Application.OnMessage

С уважением,


 
Akni ©   (2002-10-03 17:57) [4]

to Игорь Шевченко

Спасибо, попробую разобраться



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

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

Наверх




Память: 0.47 MB
Время: 0.021 c
14-46076
Anatoly Podgoretsky
2002-10-24 08:52
2002.11.14
Именинники 24 октября


3-45762
Элина
2002-10-23 18:09
2002.11.14
Создание новой БД! ПОМОГИТЕ!!!


1-45834
Fog
2002-11-05 12:44
2002.11.14
SetLength для параметра...


1-45807
Anar
2002-10-30 16:30
2002.11.14
Проблема с системным меню


1-45951
___Nikolay
2002-11-03 10:22
2002.11.14
===____________ Как сделать подсветку синтаксиса? _____________==