如果您完全確定控制項不會在其用戶端矩形之外繪製,可以通過停用由 IntersectClipRect 發出的 COleControl 呼叫,實現小幅但可偵測的速度提升。 若要這樣做,請從 COleControl::GetControlFlags 所傳回的旗標集合中移除 clipPaintDC 旗標。 例如:
DWORD CMyAxOptCtrl::GetControlFlags()
{
DWORD dwFlags = COleControl::GetControlFlags();
dwFlags &= ~clipPaintDC;
return dwFlags;
}
如果您在使用 MFC ActiveX 控制項精靈建立控制項時,於 [控制項設定] 頁面上選取 [未調整裝置內容] 選項,就會自動產生移除此旗標的程式碼。
如果您使用無窗口啟動,此優化將不會產生影響。