Graphics.FromHdc Yöntem

Tanım

Belirtilen tanıtıcıdan cihaz bağlamı için yeni Graphics bir oluşturur.

Aşırı Yüklemeler

Name Description
FromHdc(IntPtr, IntPtr)

Belirtilen tanıtıcıdan cihaz bağlamı ve tanıtıcıdan cihaza yeni Graphics bir tanıtıcı oluşturur.

FromHdc(IntPtr)

Belirtilen tanıtıcıdan cihaz bağlamı için yeni Graphics bir oluşturur.

FromHdc(IntPtr, IntPtr)

Kaynak:
Graphics.cs
Kaynak:
Graphics.cs
Kaynak:
Graphics.cs
Kaynak:
Graphics.cs
Kaynak:
Graphics.cs
Kaynak:
Graphics.cs
Kaynak:
Graphics.cs
Kaynak:
Graphics.cs

Belirtilen tanıtıcıdan cihaz bağlamı ve tanıtıcıdan cihaza yeni Graphics bir tanıtıcı oluşturur.

public:
 static System::Drawing::Graphics ^ FromHdc(IntPtr hdc, IntPtr hdevice);
public static System.Drawing.Graphics FromHdc(IntPtr hdc, IntPtr hdevice);
static member FromHdc : nativeint * nativeint -> System.Drawing.Graphics
Public Shared Function FromHdc (hdc As IntPtr, hdevice As IntPtr) As Graphics

Parametreler

hdc
IntPtr

nativeint

Cihaz bağlamı için tanıtıcı.

hdevice
IntPtr

nativeint

Bir cihaz için tanıtıcı.

Döndürülenler

Bu yöntem, belirtilen cihaz bağlamı ve cihaz için yeni Graphics bir döndürür.

Açıklamalar

yöntemi tarafından Dispose oluşturulan ve ilgili kaynakları serbest bırakmak Graphics için her zaman yöntemini çağırmalısınızFromHdc.

Görüntü cihazının ilişkilendirilmiş bir ICM renk profili olsa bile, GDI+ varsayılan olarak bu profili kullanmaz. bir için ICM'yi etkinleştirmek içinGraphics, HDC'yi (ve ICM_ON) işleve Graphics geçirdikten sonra HDC'den öğesini oluştururSetICMMode. Ardından tarafından Graphics yapılan tüm çizimler, görüntü cihazıyla ilişkilendirilmiş ICM profiline göre ayarlanır. ICM'nin etkinleştirilmesi daha yavaş performansa neden olur.

Çağırdığınız FromHdc zamandaki cihaz bağlamının (eşleme modu, mantıksal birim ve benzeri) durumu, tarafından yapılan işlemeyi Graphicsetkileyebilir.

Cihaz tanıtıcısı genellikle belirli yazıcı özelliklerini sorgulamak için kullanılır.

Şunlara uygulanır

FromHdc(IntPtr)

Kaynak:
Graphics.cs
Kaynak:
Graphics.cs
Kaynak:
Graphics.cs
Kaynak:
Graphics.cs
Kaynak:
Graphics.cs
Kaynak:
Graphics.cs
Kaynak:
Graphics.cs
Kaynak:
Graphics.cs

Belirtilen tanıtıcıdan cihaz bağlamı için yeni Graphics bir oluşturur.

public:
 static System::Drawing::Graphics ^ FromHdc(IntPtr hdc);
public static System.Drawing.Graphics FromHdc(IntPtr hdc);
static member FromHdc : nativeint -> System.Drawing.Graphics
Public Shared Function FromHdc (hdc As IntPtr) As Graphics

Parametreler

hdc
IntPtr

nativeint

Cihaz bağlamı için tanıtıcı.

Döndürülenler

Bu yöntem, belirtilen cihaz bağlamı için yeni Graphics bir döndürür.

Örnekler

Aşağıdaki kod örneği Windows Forms ile kullanılmak üzere tasarlanmıştır ve PaintEventArgs olay işleyicisinin bir parametresi olan ePaint gerektirir. Kod aşağıdaki eylemi gerçekleştirir:

  • bir iç işaretçi türü değişkeni oluşturur ve bu değişkeni hdc formun grafik nesnesinin cihaz bağlamı için tanıtıcıya ayarlar.

  • kullanarak hdcyeni bir grafik nesnesi oluşturur.

  • Yeni grafik nesnesiyle (ekranda) bir dikdörtgen çizer.

  • kullanarak hdcyeni grafik nesnesini serbest bırakır.

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( gcnew Pen( Color::Red,3.0f ), 0, 0, 200, 100 );

      // Release handle to device context and dispose of the      // Graphics object
      e->Graphics->ReleaseHdc( hdc );
      delete newGraphics;
   }
private 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 and dispose of the      // Graphics object
    e.Graphics.ReleaseHdc(hdc);
    newGraphics.Dispose();
}
<System.Security.Permissions.SecurityPermission( _
System.Security.Permissions.SecurityAction.LinkDemand, Flags := _
System.Security.Permissions.SecurityPermissionFlag.UnmanagedCode)> _
Private Sub FromHdcHdc(ByVal 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 and dispose of the Graphics 	' object
    e.Graphics.ReleaseHdc(hdc)
    newGraphics.Dispose()
End Sub

Açıklamalar

yöntemi tarafından Dispose oluşturulan ve ilgili kaynakları serbest bırakmak Graphics için her zaman yöntemini çağırmalısınızFromHdc.

Görüntü cihazının ilişkilendirilmiş bir ICM renk profili olsa bile, GDI+ varsayılan olarak bu profili kullanmaz. bir için ICM'yi etkinleştirmek içinGraphics, HDC'yi (ve ICM_ON) işleve Graphics geçirdikten sonra HDC'den öğesini oluştururSetICMMode. Ardından tarafından Graphics yapılan tüm çizimler, görüntü cihazıyla ilişkilendirilmiş ICM profiline göre ayarlanır. ICM'nin etkinleştirilmesi daha yavaş performansa neden olur.

Çağırdığınız FromHdc zamandaki cihaz bağlamının (eşleme modu, mantıksal birim ve benzeri) durumu, tarafından yapılan işlemeyi Graphicsetkileyebilir.

Şunlara uygulanır