нужно динамически создать контрол, к примеру кнопочку, с возможностью обработки сообщений от него. В моем случае в CDialog приложении. Работает в OnInitDialog, а нужно например в OnButton. Помогите начинающему кто чем может!
Здравствуйте romka_911, Вы писали:
R9>нужно динамически создать контрол, к примеру кнопочку, с возможностью обработки сообщений от него. В моем случае в CDialog приложении. Работает в OnInitDialog, а нужно например в OnButton. Помогите начинающему кто чем может!
Проще наверное тут реализовать такой подход: создать свой класс СMyButton
порожденный от CButton в нем отловить сообщение нажатие кнопки.
В дополнение к этому свой класс надо снабдить методами, информаторами
родителями, что ее нажали. Как пример родителю будет посылаться
сообщений WM_MYBUTTONCLICK с идентификационным номером кнопки, и дополнителная информация.
Тереперь в любом месте диалога пишем
СMyButton *pNewButton = new СMyButton;
pNewButton->Create(..)
ну в дополнение указатель можно (нужно) сохранить, чтоб потом
не забыть очистить память.
PS>> Однако на практике это получается порой запутано, и в своих реализациях
я создавал ActiveX аналог кнопки, благо для этого все есть, и уже с ним работал.
Сразу же разрешается цепочка получения событий родителем

, плюс появляются все
приемущества использования компонениной модели при создании приложения.
Здравствуйте Аноним, Вы писали:
А>Пол-царства за кусок кода!
В смысле
класс поражденный от кнопки, можно руками,
можно визардом в VC "New Class" -> Class type:"MFC Class", Base Class:"CButton".
ни и события туда как обычно.
Здравствуйте OlegO, Вы писали:
OO>В смысле
OO>класс поражденный от кнопки, можно руками,
OO>можно визардом в VC "New Class" -> Class type:"MFC Class", Base Class:"CButton".
OO>ни и события туда как обычно.
Просто я что-то похожее начал делать, но запутался

Хотелось би посмотреть на рабочий вариант (интересует часть с отправкой сообщений родителям). Ну чайник я, чаййник