Usando um contexto de dispositivo não recortado
Se você tiver certeza absoluta de que o seu controle não pinta fora do retângulo cliente, você poderá perceber um pequeno, mas detectável ganho de velocidade desabilitando a chamada para IntersectClipRect
feita por COleControl
. Para fazer isso, remova o sinalizador clipPaintDC do conjunto de sinalizadores retornados por COleControl::GetControlFlags. Por exemplo:
DWORD CMyAxOptCtrl::GetControlFlags()
{
DWORD dwFlags = COleControl::GetControlFlags();
dwFlags &= ~clipPaintDC;
return dwFlags;
}
O código para incluir esse sinalizador será gerado automaticamente se você selecionar a opção Contexto de dispositivo não recortado na página Configurações de Controle ao criar seu controle com o Assistente de Controle ActiveX do MFC.
Se você estiver usando a ativação sem janelas, essa otimização não terá efeito.
Confira também
Comentários
https://aka.ms/ContentUserFeedback.
Brevemente: Ao longo de 2024, vamos descontinuar progressivamente o GitHub Issues como mecanismo de feedback para conteúdos e substituí-lo por um novo sistema de feedback. Para obter mais informações, veja:Submeter e ver comentários