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

FromHdc(IntPtr)

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

FromHdc(IntPtr, IntPtr)

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

FromHdc(IntPtr)

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ını işleme.

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 olay işleyicisinin bir parametresi olan öğesini gerektirirPaintEventArgse.Paint Kod aşağıdaki eylemi gerçekleştirir:

  • bir iç işaretçi türü değişkeni hdc oluşturur ve formun grafik nesnesinin cihaz bağlamının tutamacını 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 FromHdc oluşturulan ve ilgili kaynakları serbest bırakmak Graphics için her zaman yöntemini çağırmalısınızDispose.

Görüntü cihazında 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 SetICMMode geçirdikten sonra bir HDC'den öğesini oluştururGraphics. 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 performansın düşmesine 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

FromHdc(IntPtr, IntPtr)

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

Belirtilen tanıtıcıdan bir cihaz bağlamı ve bir cihaz tanıtıcısına yeni Graphics bir 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ını işleme.

hdevice
IntPtr

nativeint

Bir cihazın tutamacı.

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 FromHdc oluşturulan ve ilgili kaynakları serbest bırakmak Graphics için her zaman yöntemini çağırmalısınızDispose.

Görüntü cihazında 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 SetICMMode geçirdikten sonra bir HDC'den öğesini oluştururGraphics. 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 performansın düşmesine 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