BufferedGraphicsContext Classe

Definição

Fornece métodos para criação de buffers gráficos que podem ser usados para buffer duplo.

public sealed class BufferedGraphicsContext : IDisposable
Herança
BufferedGraphicsContext
Implementações

Exemplos

O exemplo de código a seguir demonstra como adquirir o BufferedGraphicsContext para o domínio do aplicativo atual. Esse código faz parte de um exemplo maior fornecido para a BufferedGraphics classe .

// Retrieves the BufferedGraphicsContext for the
// current application domain.
BufferedGraphicsContext appDomainGraphicsContext =
     BufferedGraphicsManager.Current;

Comentários

A BufferedGraphicsContext classe permite que você implemente buffer duplo personalizado para seus gráficos. Os gráficos que usam buffer duplo podem reduzir ou eliminar a cintilação causada pelo redesenho de uma superfície de exibição.

Nota

No .NET 6 e versões posteriores, o pacote System.Drawing.Common, que inclui esse tipo, só tem suporte em sistemas operacionais Windows. O uso desse tipo em aplicativos multiplataforma causa avisos de tempo de compilação e exceções em tempo de execução. Para obter mais informações, consulte System.Drawing.Common com suporte apenas no Windows.

Nota

A maneira mais simples de usar buffer duplo é definir o OptimizedDoubleBuffer sinalizador de estilo de controle em um controle usando o SetStyle método . Definir o OptimizedDoubleBuffer sinalizador de estilos de controle para um controle redireciona toda a pintura para o controle por meio de um buffer gráfico padrão, sem exigir nenhum código adicional. Esse sinalizador é definido true como por padrão.

A BufferedGraphicsContext classe fornece métodos para criar e configurar um buffer gráfico. O Allocate método cria um BufferedGraphics, que é um wrapper para um buffer gráfico que também fornece métodos que você pode usar para gravar no buffer e renderizar seu conteúdo em um dispositivo de saída.

Você pode recuperar o BufferedGraphicsContext para o domínio do aplicativo atual da propriedade estática BufferedGraphicsManager.Current . Para aplicativos graficamente intensivos, como animação, você pode criar um dedicado BufferedGraphicsContext usando o construtor, mas para a maioria dos aplicativos a BufferedGraphicsManager.Current propriedade será suficiente.

Para obter mais informações sobre como desenhar elementos gráficos em buffer e implementações de buffer personalizadas, consulte Elementos gráficos em buffer duplo e Como gerenciar manualmente gráficos em buffer.

Construtores

BufferedGraphicsContext()

Inicializa uma nova instância da classe BufferedGraphicsContext.

Propriedades

MaximumBuffer

Obtém ou define o tamanho máximo do buffer a ser usado.

Métodos

Allocate(Graphics, Rectangle)

Cria um buffer de gráficos do tamanho especificado usando o formato de pixel do Graphics especificado.

Allocate(IntPtr, Rectangle)

Cria um buffer de gráficos do tamanho especificado usando o formato de pixel do Graphics especificado.

Dispose()

Libera todos os recursos usados pelo BufferedGraphicsContext.

Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
Finalize()

Permite que um objeto tente liberar recursos e executar outras operações de limpeza antes de ser recuperado pela coleta de lixo.

GetHashCode()

Serve como a função de hash padrão.

(Herdado de Object)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
Invalidate()

Descarta o buffer de gráficos atual, se um buffer tiver sido alocado e ainda não tiver sido descartado.

MemberwiseClone()

Cria uma cópia superficial do Object atual.

(Herdado de Object)
ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.

(Herdado de Object)

Aplica-se a

Produto Versões
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

Confira também