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


Обеспечение активации Flicker-Free

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

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

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

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

См. также

Элементы ActiveX MFC: оптимизация