关闭活动,当显示选项

控件有两种基本状态:活动和非活动。传统上,这些状态区分控件是否具有窗口。一个有效的控件具有一个窗口;非活动控件上。无窗口中启动的介绍,此差异不再是泛型的,因此,但仍适用于许多控件。

比较 Activex 控件通常执行的初始化的其余部分,窗口的创建非常大的操作。理想情况下,控件将延迟创建其直到必需的窗口。

,在它们是显示在容器中,许多控件不需要处于活动状态。通常,控件在非活动状态将保持,直到用户执行如要求其变为活动的操作 (,单击与鼠标或按 tab 键)。若要使控件保持非活动直到容器需要激活该功能,从控件的其他标志移除 OLEMISC_ACTIVATEWHENVISIBLE 标志:

static const DWORD BASED_CODE _dwNVC_MFC_AxOptOleMisc =
   OLEMISC_SETCLIENTSITEFIRST |
   OLEMISC_INSIDEOUT |
   OLEMISC_CANTLINKINSIDE |
   OLEMISC_RECOMPOSEONRESIZE;

OLEMISC_ACTIVATEWHENVISIBLE 标志自动省略,如果关闭在 MFC Activex 控件向导的 控件设置 页的 Activate When Visible 选项,当您创建自己的控件时。

请参见

概念

MFC ActiveX 控件:优化