Graphics.FromHdc Methode

Definitie

Hiermee maakt u een nieuwe Graphics van de opgegeven ingang naar een apparaatcontext.

Overloads

Name Description
FromHdc(IntPtr, IntPtr)

Hiermee maakt u een nieuwe Graphics van de opgegeven ingang naar een apparaatcontext en verwerkt u deze naar een apparaat.

FromHdc(IntPtr)

Hiermee maakt u een nieuwe Graphics van de opgegeven ingang naar een apparaatcontext.

FromHdc(IntPtr, IntPtr)

Bron:
Graphics.cs
Bron:
Graphics.cs
Bron:
Graphics.cs
Bron:
Graphics.cs
Bron:
Graphics.cs
Bron:
Graphics.cs
Bron:
Graphics.cs
Bron:
Graphics.cs

Hiermee maakt u een nieuwe Graphics van de opgegeven ingang naar een apparaatcontext en verwerkt u deze naar een apparaat.

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

Parameters

hdc
IntPtr

nativeint

Verwerken naar een apparaatcontext.

hdevice
IntPtr

nativeint

Afhandelen naar een apparaat.

Retouren

Deze methode retourneert een nieuw Graphics voor de opgegeven apparaatcontext en het opgegeven apparaat.

Opmerkingen

U moet altijd de Dispose methode aanroepen om de Graphics en gerelateerde resources vrij te geven die door de FromHdc methode zijn gemaakt.

Zelfs als het weergaveapparaat een gekoppeld ICM-kleurenprofiel heeft, gebruikt GDI+ dat profiel niet standaard. Als u ICM wilt inschakelen voor een Graphics, maakt u de Graphics van een HDC nadat u de HDC (en ICM_ON) aan de SetICMMode functie hebt doorgegeven. Vervolgens wordt elke tekening die door de Graphics tekening wordt uitgevoerd, aangepast aan het ICM-profiel dat is gekoppeld aan het beeldschermapparaat. Het inschakelen van ICM leidt tot tragere prestaties.

De status van de apparaatcontext (toewijzingsmodus, logische eenheid en dergelijke) op het moment dat u aanroept FromHdc , kan dit van invloed zijn op de weergave die wordt uitgevoerd door de Graphics.

De apparaatgreep wordt doorgaans gebruikt om query's uit te voeren op specifieke printermogelijkheden.

Van toepassing op

FromHdc(IntPtr)

Bron:
Graphics.cs
Bron:
Graphics.cs
Bron:
Graphics.cs
Bron:
Graphics.cs
Bron:
Graphics.cs
Bron:
Graphics.cs
Bron:
Graphics.cs
Bron:
Graphics.cs

Hiermee maakt u een nieuwe Graphics van de opgegeven ingang naar een apparaatcontext.

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

Parameters

hdc
IntPtr

nativeint

Verwerken naar een apparaatcontext.

Retouren

Deze methode retourneert een nieuwe Graphics voor de opgegeven apparaatcontext.

Voorbeelden

Het volgende codevoorbeeld is ontworpen voor gebruik met Windows Forms en vereist PaintEventArgse, een parameter van de Paint gebeurtenis-handler. De code voert de volgende actie uit:

  • Hiermee maakt u een interne variabele hdc voor het type aanwijzer en stelt u deze in op de greep in de apparaatcontext van het grafische object van het formulier.

  • Hiermee maakt u een nieuw grafisch object met behulp van hdc.

  • Hiermee tekent u een rechthoek met het nieuwe grafische object (op het scherm).

  • Hiermee wordt het nieuwe grafische object uitgebracht met behulp van hdc.

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

Opmerkingen

U moet altijd de Dispose methode aanroepen om de Graphics en gerelateerde resources vrij te geven die door de FromHdc methode zijn gemaakt.

Zelfs als het weergaveapparaat een gekoppeld ICM-kleurenprofiel heeft, gebruikt GDI+ dat profiel niet standaard. Als u ICM wilt inschakelen voor een Graphics, maakt u de Graphics van een HDC nadat u de HDC (en ICM_ON) aan de SetICMMode functie hebt doorgegeven. Vervolgens wordt elke tekening die door de Graphics tekening wordt uitgevoerd, aangepast aan het ICM-profiel dat is gekoppeld aan het beeldschermapparaat. Het inschakelen van ICM leidt tot tragere prestaties.

De status van de apparaatcontext (toewijzingsmodus, logische eenheid en dergelijke) op het moment dat u aanroept FromHdc , kan dit van invloed zijn op de weergave die wordt uitgevoerd door de Graphics.

Van toepassing op