クリッピングを行わないデバイス コンテキストの使用
コントロールは、クライアントの四角形の外側に描画しないことを確実にする場合は、IntersectClipRect に COleControlによる呼び出しを無効にすることにより小さく検出可能な速度の向上を実現できます。 これを行うには、COleControl::GetControlFlagsによって返されるフラグのセットから clipPaintDC フラグを削除します。 たとえば、次のようになります。
DWORD CMyAxOptCtrl::GetControlFlags()
{
DWORD dwFlags = COleControl::GetControlFlags();
...
dwFlags &= ~clipPaintDC;
...
return dwFlags;
}
このフラグを削除するコードは自動的にコントロールを MFC ActiveX コントロール ウィザードを作成すると コントロールの設定 ページの クリッピングを行わないデバイス コンテキスト(U) オプションを選択すると生成されます。
ウィンドウなしでアクティブを使用する場合は、この最適化は無効です。