BufferedGraphicsContext Klasa
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Udostępnia metody tworzenia buforów graficznych, których można użyć do podwójnego buforowania.
public ref class BufferedGraphicsContext sealed : IDisposable
public sealed class BufferedGraphicsContext : IDisposable
type BufferedGraphicsContext = class
interface IDisposable
Public NotInheritable Class BufferedGraphicsContext
Implements IDisposable
- Dziedziczenie
-
BufferedGraphicsContext
- Implementuje
Przykłady
W poniższym przykładzie kodu pokazano, jak uzyskać BufferedGraphicsContext element dla bieżącej domeny aplikacji. Ten kod jest częścią większego przykładu udostępnionego BufferedGraphics dla klasy .
// Retrieves the BufferedGraphicsContext for the
// current application domain.
BufferedGraphicsContext^ appDomainGraphicsContext =
BufferedGraphicsManager::Current;
// Retrieves the BufferedGraphicsContext for the
// current application domain.
BufferedGraphicsContext appDomainGraphicsContext =
BufferedGraphicsManager.Current;
' Retrieves the BufferedGraphicsContext for the
' current application domain.
Dim appDomainGraphicsContext As BufferedGraphicsContext = BufferedGraphicsManager.Current
Uwagi
Klasa BufferedGraphicsContext umożliwia zaimplementowanie niestandardowego podwójnego buforowania dla grafiki. Grafika używająca podwójnego buforowania może zmniejszyć lub wyeliminować migotanie spowodowane ponownym rysowaniem powierzchni ekranu.
Uwaga
W programie .NET 6 i nowszych wersjach pakiet System.Drawing.Common, który obejmuje ten typ, jest obsługiwany tylko w systemach operacyjnych Windows. Użycie tego typu w aplikacjach międzyplatformowych powoduje ostrzeżenia w czasie kompilacji i wyjątki czasu wykonywania. Aby uzyskać więcej informacji, zobacz System.Drawing.Common only supported on Windows (Obsługiwane tylko w systemie Windows).
Uwaga
Najprostszym sposobem użycia podwójnego buforowania jest ustawienie OptimizedDoubleBuffer flagi stylu kontrolki w kontrolce przy użyciu SetStyle metody . OptimizedDoubleBuffer Ustawienie flagi stylów kontrolki dla kontrolki przekierowuje wszystkie obrazy kontrolki za pomocą domyślnego buforu graficznego, bez konieczności dodatkowego kodu. Ta flaga jest domyślnie ustawiona na true
.
Klasa BufferedGraphicsContext udostępnia metody tworzenia i konfigurowania buforu graficznego. Metoda Allocate tworzy BufferedGraphicsobiekt , który jest otoką buforu graficznego, który udostępnia również metody umożliwiające zapisywanie w buforze i renderowanie jego zawartości na urządzeniu wyjściowym.
Element dla bieżącej domeny aplikacji można pobrać BufferedGraphicsContext z właściwości statycznej BufferedGraphicsManager.Current . W przypadku aplikacji intensywnie korzystających z graficznych, takich jak animacja, można utworzyć dedykowany BufferedGraphicsContext przy użyciu konstruktora, ale w przypadku większości aplikacji BufferedGraphicsManager.Current właściwość będzie wystarczająca.
Aby uzyskać więcej informacji na temat rysunku buforowanej grafiki i niestandardowych implementacji buforowania, zobacz Podwójne buforowane grafiki i Instrukcje: Ręczne zarządzanie buforowaną grafiką.
Konstruktory
BufferedGraphicsContext() |
Inicjuje nowe wystąpienie klasy BufferedGraphicsContext. |
Właściwości
MaximumBuffer |
Pobiera lub ustawia maksymalny rozmiar buforu do użycia. |
Metody
Allocate(Graphics, Rectangle) |
Tworzy bufor graficzny o określonym rozmiarze przy użyciu formatu pikseli określonego Graphicsobiektu . |
Allocate(IntPtr, Rectangle) |
Tworzy bufor graficzny o określonym rozmiarze przy użyciu formatu pikseli określonego Graphicsobiektu . |
Dispose() |
Zwalnia wszelkie zasoby używane przez element BufferedGraphicsContext. |
Equals(Object) |
Określa, czy dany obiekt jest taki sam, jak bieżący obiekt. (Odziedziczone po Object) |
Finalize() |
Umożliwia obiektowi próbę zwolnienia zasobów i wykonania innych operacji oczyszczania przed odzyskaniem przez odzyskiwanie pamięci. |
GetHashCode() |
Służy jako domyślna funkcja skrótu. (Odziedziczone po Object) |
GetType() |
Type Pobiera wartość bieżącego wystąpienia. (Odziedziczone po Object) |
Invalidate() |
Usuwa bieżący bufor graficzny, jeśli bufor został przydzielony i nie został jeszcze usunięty. |
MemberwiseClone() |
Tworzy płytkią kopię bieżącego Objectelementu . (Odziedziczone po Object) |
ToString() |
Zwraca ciąg reprezentujący bieżący obiekt. (Odziedziczone po Object) |