BufferedGraphicsContext クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
ダブル バッファリングに使用できるグラフィックス バッファーを作成するためのメソッドを提供します。
public ref class BufferedGraphicsContext sealed : IDisposable
public sealed class BufferedGraphicsContext : IDisposable
type BufferedGraphicsContext = class
interface IDisposable
Public NotInheritable Class BufferedGraphicsContext
Implements IDisposable
- 継承
-
BufferedGraphicsContext
- 実装
例
次のコード例は、現在のアプリケーション ドメインの を BufferedGraphicsContext 取得する方法を示しています。 このコードは、 クラスに対して提供されるより大きな例の BufferedGraphics 一部です。
// 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
注釈
BufferedGraphicsContextクラスを使用すると、グラフィックスのカスタム ダブル バッファリングを実装できます。 二重バッファリングを使用するグラフィックスは、表示サーフェスの再描画によって引き起こされるちらつきを減らすか、または排除できます。
注意
.NET 6 以降のバージョンでは、この種類を含む System.Drawing.Common パッケージは Windows オペレーティング システムでのみサポートされています。 クロスプラットフォーム アプリでこの型を使用すると、コンパイル時の警告と実行時の例外が発生します。 詳細については、「 Windows でのみサポートされる System.Drawing.Common」を参照してください。
注意
二重バッファリングを使用する最も簡単な方法は、 メソッドを OptimizedDoubleBuffer 使用してコントロールにコントロール スタイル フラグを SetStyle 設定することです。 コントロールのコントロール スタイル フラグを OptimizedDoubleBuffer 設定すると、追加のコードを必要とせずに、既定のグラフィックス バッファーを介してコントロールのすべての描画がリダイレクトされます。 このフラグは既定で に true
設定されています。
クラスには BufferedGraphicsContext 、グラフィックス バッファーを作成および構成するためのメソッドが用意されています。 メソッドは Allocate を BufferedGraphics作成します。これはグラフィックス バッファーのラッパーであり、バッファーに書き込み、その内容を出力デバイスにレンダリングするために使用できるメソッドも提供します。
現在のアプリケーション ドメインの を BufferedGraphicsContext 静的 BufferedGraphicsManager.Current プロパティから取得できます。 アニメーションなどのグラフィカルに集中的なアプリケーションの場合は、 コンストラクターを使用して専用 BufferedGraphicsContext を作成できますが、ほとんどのアプリケーションでは プロパティで BufferedGraphicsManager.Current 十分です。
バッファー付きグラフィックスの描画とカスタム バッファリングの実装の詳細については、「 ダブル バッファーグラフィックス 」および「 方法: バッファー付きグラフィックスを手動で管理する」を参照してください。
コンストラクター
BufferedGraphicsContext() |
BufferedGraphicsContext クラスの新しいインスタンスを初期化します。 |
プロパティ
MaximumBuffer |
使用するバッファーの最大サイズを取得または設定します。 |
メソッド
Allocate(Graphics, Rectangle) |
指定した Graphics のピクセル形式を使用して、指定したサイズのグラフィックス バッファーを作成します。 |
Allocate(IntPtr, Rectangle) |
指定した Graphics のピクセル形式を使用して、指定したサイズのグラフィックス バッファーを作成します。 |
Dispose() |
BufferedGraphicsContext によって使用されているすべてのリソースを解放します。 |
Equals(Object) |
指定されたオブジェクトが現在のオブジェクトと等しいかどうかを判断します。 (継承元 Object) |
Finalize() |
オブジェクトが、ガベージ コレクションによって収集される前に、リソースの解放とその他のクリーンアップ操作の実行を試みることができるようにします。 |
GetHashCode() |
既定のハッシュ関数として機能します。 (継承元 Object) |
GetType() |
現在のインスタンスの Type を取得します。 (継承元 Object) |
Invalidate() |
バッファーが割り当てられていてまだ破棄されていない場合に、現在のグラフィックス バッファーを破棄します。 |
MemberwiseClone() |
現在の Object の簡易コピーを作成します。 (継承元 Object) |
ToString() |
現在のオブジェクトを表す文字列を返します。 (継承元 Object) |
適用対象
こちらもご覧ください
.NET