Легенда:
новое сообщение
закрытая нитка
новое сообщение
в закрытой нитке
старое сообщение
|
- Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
- Новичкам также крайне полезно ознакомиться с данным документом.
[Win32] перенаправка сообщений 08.09.02 01:52
Автор: vim Статус: Незарегистрированный пользователь
|
Подскажите, как можно перенаправить сообщения из child window в parent для стандартных компонентов типа Button, Edit, ComboBox etc?
Компоненты создаются обычным способом, типа
CreateWindow( "BUTTON", .... );
В частности мне нужно WM_KEYDOWN, для нестандартной обработки нажатия клавиш.
Для таких компонент не задается пользовательская window процедура.
Теоретически можно подменить window процедуру через SetWindowLong(),
но не хочется этого делать.
Есть ли какой-нибудь общий способ перенаправить сообщения в parent window?
|
|
[Win32] перенаправка сообщений 08.09.02 11:11
Автор: HandleX <Александр М.> Статус: The Elderman
|
> Для таких компонент не задается пользовательская window > процедура. > Теоретически можно подменить window процедуру через > SetWindowLong(), > но не хочется этого делать. > > Есть ли какой-нибудь общий способ перенаправить сообщения в > parent window?
ДА, обычно всё так и делается. Это называется SubClassing. Для окна присваивается новый адрес процедуры, причём старый запоминается. Ну а дальше в этой новой процедуре ты обрабатываешь сообщения, прежде чем отправить их по старому адреса для дальнейшей их стандартной обработки. или можешь вообще некоторые не отправлять ;-)))
|
|
|