Compartilhar via


Como: Reduza a cintilação de elementos gráficos com o buffer duplo para formulários e controles

Buffer duplo usa um buffer de memória para resolver os problemas de oscilação associados a várias operações de pintura. Quando o buffer duplo está habilitado, todas as operações de pintura são processadas primeiro um buffer de memória em vez da superfície de desenho na tela. Depois que todas as operações de pintura são concluídas, o buffer de memória é copiado diretamente para a superfície de desenho associada a ele. Porque gráficos de apenas uma operação na tela, a oscilação de imagem associados às operações de pintura complexa é eliminada.Para a maioria dos aplicativos, o buffer duplo do padrão fornecido pelo .NET Framework irá fornecer os melhores resultados. Controles padrão do Windows Forms são duplo em buffer por padrão. Você pode ativar padrão dupla de buffer em seus formulários e autoria de controles de duas maneiras. É possível que um desses conjuntos o DoubleBuffered propriedade para true, ou você pode chamar o SetStyle método para definir o OptimizedDoubleBuffer Sinalizador para true. Ambos os métodos habilitará o buffer duplo padrão para seu formulário ou controle e fornecer o processamento de gráficos sem cintilações. Chamar o SetStyle método é recomendado somente para controles personalizados para o qual você tenha escrito todo o processamento código.

Para cenários de buffer duplos mais avançados, como, por exemplo, animação ou gerenciamento de memória avançada, você pode implementar sua própria lógica de buffer dupla. Para obter mais informações, consulte Como: Gerenciar manualmente no buffer de elementos gráficos.

Para reduzir a cintilação

  • Defina a propriedade DoubleBuffered como true.

            DoubleBuffered = True
    
    
    DoubleBuffered = true;
    

- ou -

  • Chamar o SetStyle método para definir o OptimizedDoubleBuffer Sinalizador para true.

            SetStyle(ControlStyles.OptimizedDoubleBuffer, True)
    
    
    SetStyle(ControlStyles.OptimizedDoubleBuffer, true);
    

Consulte também

Referência

DoubleBuffered

SetStyle

Conceitos

Duplo em buffer gráficos

Outros recursos

Elementos gráficos e desenho em formulários do Windows