Определение обработчика сообщений для отраженного сообщения
После создания класса элемента управления MFC для него можно определить обработчик сообщений. Обработчики отраженных сообщений позволяют классу элемента управления обрабатывать собственные сообщения, прежде чем они будут переданы родителю. Для передачи сообщений от элемента управления к родительскому окну может использоваться функция MFC CWnd::SendMessage.
Эта функциональная возможность позволяет, например, создать поле со списком, которое будет прорисовываться самостоятельно, а не родительским окном (рисование владельцем). Дополнительные сведения об отраженных сообщениях см. в разделе Обработка отраженных сообщений.
Чтобы создать элемент управления ActiveX с аналогичной функциональностью, необходимо создать проект элемента управления ActiveX.
Примечание
Добавить отраженное сообщение (OCM_Message) для элемента управления ActiveX с помощью окна "Свойства", как описано ниже, невозможно.Добавление этих сообщений необходимо производить вручную.
Определение обработчика сообщений для отраженного сообщения в окне "Свойства"
Добавьте в проект MFC элемент управления, например, список, контейнер элементов управления, панель инструментов или дерево.
В окне классов щелкните имя класса элемента управления.
Имя класса элемента управления отобразится в окне Свойства в списке Имя класса.
Нажмите кнопку Сообщения, чтобы отобразить список сообщений Windows, которые могут быть добавлены к элементу управления.
Прокрутите вниз список сообщений в окне "Свойства" до заголовка Отражен. Можно также нажать кнопку Категории и свернуть окно, чтобы получить доступ к заголовку Отражен.
Выберите отраженное сообщение, для которого необходимо определить обработчик события. Отраженные сообщения помечаются знаком равенства (=).
Щелкните ячейку в правом столбце в окне свойств для отображения предложенного имени обработчика как <add>HandlerName. (Например, обработчик сообщений =WM_CTLCOLOR предлагает <add>CtlColor).
Щелкните предлагаемое имя, чтобы принять его. Обработчик будет добавлен в проект.
Имена добавленных обработчиков сообщений отображаются в правом столбце окна отраженных сообщений.
Чтобы изменить или удалить обработчик сообщений, повторите шаги с 4 по 7. Щелкните ячейку, содержащую имя обработчика, подлежащего удалению или изменению, и выберите соответствующую задачу.
См. также
Задачи
Сопоставление сообщений с функциями
Добавление функции-члена (Visual C++)
Добавление переменной-члена (Visual C++)
Переопределение виртуальной функции (Visual C++)
Ссылки
Навигация по структуре классов (Visual C++)
Основные понятия
Добавление функциональных возможностей с помощью мастеров кода