Compartilhar via


Controles ActiveX MFC: otimização

Este artigo explica técnicas que você pode usar para otimizar seus controles ActiveX para o melhor desempenho.

Os tópicos Desativando ativar a opção visível e Fornecendo a interação do mouse em quando inativo discutem os controles que não criará uma janela até ativado. O Fornecendo a ativação sem o windows tópico discute os controles que nunca criam uma janela do, mesmo quando são ativados.

O windows tem dois desvantagens principais para objetos OLE: impedem que os objetos são transparentes ou nonrectangular quando ativas, e adicionará uma grande sobrecarga a instanciação e a exibição dos controles. Normalmente, criar uma janela tem 60 por cento da hora de criação de um controle. Com uma única janela compartilhada (geralmente o contêiner) e um código de despacho, um controle recebe os mesmos serviços da janela, normalmente sem uma perda de desempenho. Ter uma janela for predominante sobrecarga desnecessária para o objeto.

Algumas otimizações não necessariamente melhoram o desempenho quando o controle é usado em determinados contêiner. Por exemplo, os contêineres liberados antes de 1996 não ofereciam suporte à ativação sem o windows, portanto implementar esse recurso não fornecerá um benefício em contêineres mais antigos. No entanto, quase cada contêiner da suporte à persistência, portanto otimizar o código de persistência do controle provavelmente melhorará o desempenho em qualquer contêiner. Se o controle é destinado especificamente ser usado com um tipo específico de contêiner, você pode querer pesquisa que essas otimizações é suportado por esse contêiner. No entanto, em geral, você deve tentar implementar o máximo como essas técnicas como é aplicável a seu controle específico garantir que seu controle executar tão bem como pode possivelmente em uma ampla gama de contêiner.

Você pode implementar muitas dessas otimizações com Assistente de controle ActiveX de MFC, na página de Controle configurações .

Opções com OLE DB de otimização do assistente do controle ActiveX MFC

Controle a configuração no assistente de controle ActiveX de MFC

Ação

Mais informações

Caixa de seleção deActivate when visible

Limpar

Desativando ativar a opção visível

Caixa de seleção deWindowless activation

Select

Fornecendo a ativação sem o windows

Caixa de seleção deUnclipped device context

Select

Usando um contexto Unclipped de dispositivo

Caixa de seleção deFlicker-free activation

Select

Fornecendo a ativação Cintilação-livre

Caixa de seleção deMouse pointer notifications when inactive

Select

Fornecendo a interação do mouse em quando inativo

Caixa de seleção deOptimized drawing code

Select

Otimizando o desenho de controle

Para obter informações detalhadas sobre as funções de membro que implementam essas otimizações, consulte COleControl. As funções de membro são listadas pelo uso do, como Operações sem o windows e Funções de manipulação inativos do ponteiro.

Para obter mais informações, consulte:

Consulte também

Conceitos

Controles ActiveX MFC