Graphics.FromHdc Metod
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Skapar en ny Graphics från det angivna handtaget till en enhetskontext.
Överlagringar
| Name | Description |
|---|---|
| FromHdc(IntPtr, IntPtr) |
Skapar en ny Graphics från det angivna handtaget till en enhetskontext och hanterar till en enhet. |
| FromHdc(IntPtr) |
Skapar en ny Graphics från det angivna handtaget till en enhetskontext. |
FromHdc(IntPtr, IntPtr)
- Källa:
- Graphics.cs
- Källa:
- Graphics.cs
- Källa:
- Graphics.cs
- Källa:
- Graphics.cs
- Källa:
- Graphics.cs
- Källa:
- Graphics.cs
- Källa:
- Graphics.cs
- Källa:
- Graphics.cs
Skapar en ny Graphics från det angivna handtaget till en enhetskontext och hanterar till en enhet.
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
Parametrar
- hdc
-
IntPtr
nativeint
Hantera till en enhetskontext.
- hdevice
-
IntPtr
nativeint
Hantera till en enhet.
Returer
Den här metoden returnerar en ny Graphics för den angivna enhetskontexten och enheten.
Kommentarer
Du bör alltid anropa Dispose metoden för att frigöra de Graphics och relaterade resurser som skapats av FromHdc metoden.
Även om visningsenheten har en associerad ICM-färgprofil använder GDI+ inte den profilen som standard. Om du vill aktivera ICM för en Graphicsskapar Graphics du från en HDC när du har överfört HDC (och ICM_ON) till SetICMMode funktionen. Sedan justeras alla ritningar som Graphics görs av enligt den ICM-profil som är associerad med visningsenheten. Om du aktiverar ICM blir prestandan långsammare.
Tillståndet för enhetskontexten (mappningsläge, logisk enhet och liknande) vid den tidpunkt då du anropar FromHdc kan påverka renderingen Graphicssom utförs av .
Enhetshandtaget används vanligtvis för att fråga efter specifika skrivarfunktioner.
Gäller för
FromHdc(IntPtr)
- Källa:
- Graphics.cs
- Källa:
- Graphics.cs
- Källa:
- Graphics.cs
- Källa:
- Graphics.cs
- Källa:
- Graphics.cs
- Källa:
- Graphics.cs
- Källa:
- Graphics.cs
- Källa:
- Graphics.cs
Skapar en ny Graphics från det angivna handtaget till en enhetskontext.
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
Parametrar
- hdc
-
IntPtr
nativeint
Hantera till en enhetskontext.
Returer
Den här metoden returnerar en ny Graphics för den angivna enhetskontexten.
Exempel
Följande kodexempel är utformat för användning med Windows Forms och kräver PaintEventArgse, vilket är en parameter för händelsehanteraren Paint. Koden utför följande åtgärd:
Skapar en intern pekartypsvariabel
hdcoch anger den till handtaget till enhetskontexten för formulärets grafikobjekt.Skapar ett nytt grafikobjekt med .
hdcRitar en rektangel med det nya grafikobjektet (på skärmen).
Släpper det nya grafikobjektet med .
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
Kommentarer
Du bör alltid anropa Dispose metoden för att frigöra de Graphics och relaterade resurser som skapats av FromHdc metoden.
Även om visningsenheten har en associerad ICM-färgprofil använder GDI+ inte den profilen som standard. Om du vill aktivera ICM för en Graphicsskapar Graphics du från en HDC när du har överfört HDC (och ICM_ON) till SetICMMode funktionen. Sedan justeras alla ritningar som Graphics görs av enligt den ICM-profil som är associerad med visningsenheten. Om du aktiverar ICM blir prestandan långsammare.
Tillståndet för enhetskontexten (mappningsläge, logisk enhet och liknande) vid den tidpunkt då du anropar FromHdc kan påverka renderingen Graphicssom utförs av .