Поделиться через


Предоставление активации без мерцания

Если элемент управления рисует себя одинаково в неактивных и активных состояниях (и не используется активация без окон), можно исключить операции рисования и сопровождающий визуальный мерцание, которые обычно происходят при переходе между неактивными и активными состояниями. Для этого включите флаг noFlickerActivate в набор флагов, возвращаемых COleControl::GetControlFlags. Например:

DWORD CMyAxOptCtrl::GetControlFlags()
{
   DWORD dwFlags = COleControl::GetControlFlags();
dwFlags |= noFlickerActivate;
return dwFlags;
}

Код для включения этого флага создается автоматически при выборе параметра активации Flicker-Free на странице управления Параметры при создании элемента управления с помощью мастера управления ActiveX MFC.

Если вы используете активацию без окон, эта оптимизация не влияет.

См. также

Элементы ActiveX в MFC. Оптимизация