vs2017开发ActiveX(主讲OCX)(八)、添加常用方法

知识共享许可协议 版权声明:署名,允许他人基于本文进行创作,且必须基于与原先许可协议相同的许可协议分发本文 (Creative Commons

添加常用方法

前言

备注:本文所介绍方法,vs2017已经不支持,仅是因教程连贯需要,vs2017以前的版本如vs2015都是支持的,如有需要的同学可以继续往下看。
常用方法与自定义方法的不同之处在于它已经由类COleControl实现。 例如,COleControl包含一个预定义的成员函数,该函数支持控件的Refresh方法。 此库存方法的调度映射条目是DISP_STOCKFUNC_REFRESH。

COleControl支持两种常用方法:DoClick和Refresh。 控件的用户调用Refresh来立即更新控件的外观; 调用DoClick来触发控件的Click事件。

方法 调度映射条目 注释
DoClick DISP_STOCKPROP_DOCLICK( ) 触发 Click 事件。
Refresh DISP_STOCKPROP_REFRESH( ) 将立即更新控件的外观。

使用“添加方法向导”添加常用方法

使用“添加方法向导”添加常用方法很简单。以下过程演示如何使用MFC ActiveX控件向导将Refresh方法添加到已创建的控件。

使用“添加方法向导”添加常用Refresh方法

  • 加载您的控件的项目。

  • 在“类视图”中,展开控件的库节点。

  • 右键单击控件的接口节点(库节点的第二个节点)以打开快捷菜单。

  • 从快捷菜单中,单击“添加”,然后单击“添加方法”。
    这将打开“添加方法向导”。
    打开

  • 在“方法名称”框中,单击Refresh。

  • 单击完成。

在添加方法向导中更改常用函数

由于控件的基类支持库存Refresh方法,因此“添加方法向导”不会以任何方式更改控件的类声明。它为控件的调度映射及其.IDL文件添加了该方法的条目。以下行添加到控件的调度映射中,位于其实现(.CPP)文件中:

DISP_STOCKFUNC_REFRESH()

这使得Refresh方法可以使用Refresh方法。

以下行添加到控件的.IDL文件中:

[id(DISPID_REFRESH), helpstring("method Refresh")] void Refresh(void);

此行为Refresh方法分配特定的ID号。

猜你喜欢

转载自blog.csdn.net/y601500359/article/details/92830857