关闭“可见时激活”选项

控件有两种基本状态:活动和非活动。 传统上,这些状态通过控件是否具有窗口来区分。 一个活动控件具有一个窗口;非活动控件没有。 通过引入无窗口激活,这种区别不再通用,但仍适用于许多控件。

比较 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 控件:优化