Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Замечание
Библиотека классов Microsoft Foundation (MFC) продолжает поддерживаться. Однако мы больше не добавляем функции или обновляем документацию.
Элемент управления ActiveX запускает события для взаимодействия между собой и его контейнером управления. Контейнер также может взаимодействовать с элементом управления с помощью методов и свойств. Методы также называются функциями.
Методы и свойства предоставляют экспортируемый интерфейс для использования другими приложениями, такими как клиенты службы автоматизации и контейнеры элементов управления ActiveX. Дополнительные сведения о свойствах элемента управления ActiveX см. в статье MFC ActiveX Controls: Properties.
Методы аналогичны использованию и назначению функций-членов класса C++. Существует два типа методов, которые может реализовать элемент управления: стандартные и пользовательские. Подобно встроенным событиям, встроенные методы — это методы, для которых COleControl предоставляет реализацию. Дополнительные сведения о встроенных методах см. в статье MFC ActiveX Controls: добавление встроенных методов. Пользовательские методы, определенные разработчиком, разрешают дополнительную настройку элемента управления. Дополнительные сведения см. в статье "Элементы ActiveX MFC: добавление настраиваемых методов".
Библиотека классов Microsoft Foundation (MFC) реализует механизм, позволяющий вашему контролу поддерживать стандартные и пользовательские методы. Первая часть — класс COleControl. Производные от CWndCOleControl методы-члены поддерживают стандартные методы, которые являются общими для всех элементов ActiveX. Второй частью этого механизма является карта отправки. Карта отправки похожа на карту сообщений; однако вместо сопоставления функции с идентификатором сообщения Windows карта диспетчера сопоставляет функции виртуальных членов с идентификаторами IDispatch.
Чтобы элемент управления корректно поддерживал различные методы, его класс должен объявить карту диспетчеризации. Это достигается следующей строкой кода, расположенной в заголовке класса управления (). H) файл:
DECLARE_DISPATCH_MAP()
Основная цель карты отправки — установить связь между именами методов, используемыми внешним вызывающим оператором (например, контейнером) и функциями-членами класса элемента управления, реализующими методы. После объявления карты отправки ее необходимо определить в файле реализации элемента управления (.cpp). Следующие строки кода определяют карту отправки:
BEGIN_DISPATCH_MAP(CMyAxUICtrl, COleControl)
END_DISPATCH_MAP()
Если вы использовали мастер управления ActiveX MFC для создания проекта, эти строки были добавлены автоматически. Если мастер управления ActiveX MFC не использовался, необходимо вручную добавить эти строки.
В следующих статьях подробно рассматриваются методы: