MFC ActiveX 控件:方法
Activex 控件激发事件通信在自身及其控件容器之间。 容器可以使用控件还通信是通过方法和属性。 方法也会调用函数。
方法和属性提供的导出的接口供其他应用程序使用,例如自动化客户端和 Activex 控件容器。 有关 Activex 控件属性的更多信息,请参见中的文章 MFC Activex 控件:属性。
方法是类似正在使用并且打算对 c. C++ 类的成员函数。 控件具有可以执行方法的两种类型:常用和自定义。 类似于常用事件,常用方法是 COleControl 提供的实现的那些方法。 有关常用方法的更多信息,请参见中的文章 MFC Activex 控件:添加常用方法。 自定义方法,定义由开发人员,允许控件的其他自定义。 有关更多信息,请参见中的文章 MFC Activex 控件:添加自定义方法。
Microsoft 基础类库 (mfc) 实现允许您的控件支持常用和自定义方法的框架。 第一部分是类 COleControl。 从 CWnd派生, COleControl 成员函数支持对所有 Activex 控件共有的常用方法。 此结构的第二部分是计划映射。 计划映射类似于消息映射;但是,而不是映射到 windows 消息 ID 的函数,计划映射映射虚拟成员函数对 IDispatch IDS。
为了使相应地支持控件的各方法,其类必须声明计划映射。 这是由驻留在控件类头完成的以下代码行 (。H) 文件:
DECLARE_DISPATCH_MAP()
计划映射的主要目的是生成外部调用方使用的方法名称 (例如容器) 并执行方法的类之间的成员函数的关系。 在计划映射声明后,此控件的实现 (.CPP) 文件中定义。 下面的代码行定义计划映射:
BEGIN_DISPATCH_MAP(CMyAxUICtrl, COleControl)
...
END_DISPATCH_MAP()
如果使用 MFC Activex 控件向导 创建项目,这些行自动添加了。 如果未使用 MFC Activex 控件向导,必须手动添加这些行。
下列文章详细讨论方法: