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