Przy użyciu kontekstu urządzenia przycinana
Jeśli masz absolutną pewność, że jeśli formant nie malowanie poza prostokątem, jego klienta, może realizować zysk prędkości małe, ale wykrywalne, wyłączając wywołanie IntersectClipRect , dokonywane jest poprzez COleControl.Aby to zrobić, należy usunąć clipPaintDC flagi z zestaw flag zwrócony przez COleControl::GetControlFlags.Na przykład:
DWORD CMyAxOptCtrl::GetControlFlags()
{
DWORD dwFlags = COleControl::GetControlFlags();
...
dwFlags &= ~clipPaintDC;
...
return dwFlags;
}
Kod, aby usunąć tę flagę jest generowany automatycznie po wybraniu Przycinana kontekstu urządzenia opcji na Ustawienia sterowania strony, podczas tworzenia formantu za pomocą Kreatora formant ActiveX MFC.
Jeśli używasz aktywacji bez okien, optymalizacja nie ma wpływu.