如果控件处于活动和活动绘制相同状态 (和不使用无窗口中激活),可以消除通常发生,当在停用以及活动状态之间进行过渡的绘图操作及随附的视觉闪烁。 为此,在组的 noFlickerActivate 标志。COleControl::GetControlFlags返回。 例如:
DWORD CMyAxOptCtrl::GetControlFlags()
{
DWORD dwFlags = COleControl::GetControlFlags();
...
dwFlags |= noFlickerActivate;
...
return dwFlags;
}
为包含此标记的代码自动生成,则选择 控件设置 页中的 无闪烁激活 (V) 选项,当创建具有 MFC ActiveX 控件向导时控件。
如果使用无窗口的激活,此优化不起作用。