次の方法で共有


Graphics.FromHdc メソッド

デバイス コンテキストを識別する指定のハンドルから新しい Graphics オブジェクトを作成します。

オーバーロードの一覧

デバイス コンテキストを識別する指定のハンドルから新しい Graphics オブジェクトを作成します。

[Visual Basic] Overloads Public Shared Function FromHdc(IntPtr) As Graphics

[C#] public static Graphics FromHdc(IntPtr);

[C++] public: static Graphics* FromHdc(IntPtr);

[JScript] public static function FromHdc(IntPtr) : Graphics;

デバイス コンテキストを識別する指定のハンドルと、デバイスを識別する指定のハンドルから新しい Graphics オブジェクトを作成します。

[Visual Basic] Overloads Public Shared Function FromHdc(IntPtr, IntPtr) As Graphics

[C#] public static Graphics FromHdc(IntPtr, IntPtr);

[C++] public: static Graphics* FromHdc(IntPtr, IntPtr);

[JScript] public static function FromHdc(IntPtr, IntPtr) : Graphics;

使用例

[Visual Basic, C#] 次の例は、Windows フォームでの使用を意図してデザインされており、 Paint イベント ハンドラのパラメータである PaintEventArgs e が必要です。このコードでは次のアクションを実行します。

  • 内部ポインタ型変数 hdc を作成し、フォームのグラフィックス オブジェクトのデバイス コンテキストを識別するハンドルにこの変数を設定します。
  • hdc を使用して、新しいグラフィックス オブジェクトを作成します。
  • 新しいグラフィックス オブジェクトで画面に四角形を描画します。
  • hdc を使用して、新しいグラフィックス オブジェクトを解放します。

[Visual Basic, C#] メモ   ここでは、FromHdc のオーバーロード形式のうちの 1 つだけについて、使用例を示します。その他の例については、各オーバーロード形式のトピックを参照してください。

 
Public Sub FromHdcHdc(e As PaintEventArgs)
' Get handle to device context.
Dim hdc As IntPtr = e.Graphics.GetHdc()
' Create new graphics object using handle to device context.
Dim newGraphics As Graphics = Graphics.FromHdc(hdc)
' Draw rectangle to screen.
newGraphics.DrawRectangle(New Pen(Color.Red, 3), 0, 0, 200, 100)
' Release handle to device context.
e.Graphics.ReleaseHdc(hdc)
End Sub
        
[C#] 
public void FromHdcHdc(PaintEventArgs e)
{
// Get handle to device context.
IntPtr hdc = e.Graphics.GetHdc();
// Create new graphics object using handle to device context.
Graphics newGraphics = Graphics.FromHdc(hdc);
// Draw rectangle to screen.
newGraphics.DrawRectangle(new Pen(Color.Red, 3), 0, 0, 200, 100);
// Release handle to device context.
e.Graphics.ReleaseHdc(hdc);
}
        

[C++, JScript] C++ および JScript のサンプルはありません。Visual Basic および C# のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン 言語のフィルタ をクリックします。

参照

Graphics クラス | Graphics メンバ | System.Drawing 名前空間