Форум: "WinAPI";
Текущий архив: 2003.12.04;
Скачать: [xml.tar.bz2];
ВнизКак отловить события создания, удаления, активации MDI-child форм Найти похожие ветки
← →
Dens (2003-10-09 13:31) [0]Мастера, помогите.
Как можно в MainForm отловить события создания, удаления MDI-child окон и смены активного MDI-child окна?
Пробовал обрабатывать сообщения WM_MDIActivate, WM_MDICreate и WM_MDIDestroy. Но в главную форму эти сообщения не попадают. В хелпе вычитал, что эти сообщения передаются в MDI-child формы и в ClientWindow.
А мне бы желательно именно в MainForm. Но если есть какой-либо другой способ, то буду рад и такой ответ.
← →
Е-Моё имя (2003-10-09 14:25) [1]оконная процедура окна MainForm.ClientHandle получает эти сообщения
там и обрабатывай
← →
Dens (2003-10-09 14:29) [2]2 Е-Моё имя
А можно небольшой примерчик?
← →
Е-Моё имя (2003-10-09 14:30) [3]нет
← →
Dens (2003-10-09 14:37) [4]2 Е-Моё имя
Если пример не можешь, может объяснишь как этой оконной процедурой пользоваться?
← →
Е-Моё имя (2003-10-09 14:41) [5]берешь оконную процедуру указанного окна, запоминаешь ейный адрес
пишешь свою процедуру, подставляешь ее как новую ок.проц. того окна
сообщения падают в твою процедуру
там ты обрабатываешь нужные и отдаешь управление "родной" запомненной процедуре
← →
Dens (2003-10-09 14:46) [6]2 Е-Моё имя
А как через MainForm.ClientHandle получить адрес процедуры?
Или сначала нужно из ClientHandle получить окно?
← →
Е-Моё имя (2003-10-09 14:49) [7]GetWindowLong(MainForm.ClientHandle,GWL_WNDPROC)
дальше сам
← →
Dens (2003-10-09 14:50) [8]Спасибо, понял.
Ветка закрыта.
Страницы: 1 вся ветка
Форум: "WinAPI";
Текущий архив: 2003.12.04;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.003 c