Graphics.FromHdc Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Tworzy nowy Graphics z określonego uchwytu do kontekstu urządzenia.
Przeciążenia
FromHdc(IntPtr, IntPtr) |
Tworzy nowy Graphics z określonego uchwytu do kontekstu urządzenia i dojście do urządzenia. |
FromHdc(IntPtr) |
Tworzy nowy Graphics z określonego uchwytu do kontekstu urządzenia. |
FromHdc(IntPtr, IntPtr)
- Źródło:
- Graphics.cs
- Źródło:
- Graphics.cs
- Źródło:
- Graphics.cs
- Źródło:
- Graphics.cs
- Źródło:
- Graphics.cs
Tworzy nowy Graphics z określonego uchwytu do kontekstu urządzenia i dojście do urządzenia.
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
Parametry
- hdc
-
IntPtr
nativeint
Obsługa kontekstu urządzenia.
- hdevice
-
IntPtr
nativeint
Obsługa na urządzeniu.
Zwraca
Ta metoda zwraca nowy Graphics dla określonego kontekstu urządzenia i urządzenia.
Uwagi
Zawsze należy wywołać metodę Dispose, aby zwolnić Graphics i powiązane zasoby utworzone przez metodę FromHdc.
Nawet jeśli urządzenie wyświetlane ma skojarzony profil kolorów ICM, GDI+ nie będzie domyślnie używać tego profilu. Aby włączyć ICM dla Graphics, skonstruuj Graphics z usługi HDC po przekazaniu usługi HDC (i ICM_ON) do funkcji SetICMMode
. Następnie każdy rysunek wykonany przez Graphics zostanie dostosowany zgodnie z profilem ICM skojarzonym z urządzeniem wyświetlania. Włączenie zdarzenia ICM spowoduje niższą wydajność.
Stan kontekstu urządzenia (tryb mapowania, jednostka logiczna i podobne) podczas wywoływania FromHdc może mieć wpływ na renderowanie wykonywane przez Graphics.
Uchwyt urządzenia jest zwykle używany do wykonywania zapytań dotyczących określonych możliwości drukarki.
Dotyczy
FromHdc(IntPtr)
- Źródło:
- Graphics.cs
- Źródło:
- Graphics.cs
- Źródło:
- Graphics.cs
- Źródło:
- Graphics.cs
- Źródło:
- Graphics.cs
Tworzy nowy Graphics z określonego uchwytu do kontekstu urządzenia.
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
Parametry
- hdc
-
IntPtr
nativeint
Obsługa kontekstu urządzenia.
Zwraca
Ta metoda zwraca nowy Graphics dla określonego kontekstu urządzenia.
Przykłady
Poniższy przykład kodu jest przeznaczony do użycia z formularzami Systemu Windows i wymaga PaintEventArgse
, który jest parametrem programu obsługi zdarzeń Paint. Kod wykonuje następującą akcję:
Tworzy wewnętrzną zmienną typu wskaźnika
hdc
i ustawia ją na dojście do kontekstu urządzenia obiektu graficznego formularza.Tworzy nowy obiekt graficzny przy użyciu
hdc
.Rysuje prostokąt z nowym obiektem graficznym (na ekranie).
Zwalnia nowy obiekt graficzny przy użyciu
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
Uwagi
Zawsze należy wywołać metodę Dispose, aby zwolnić Graphics i powiązane zasoby utworzone przez metodę FromHdc.
Nawet jeśli urządzenie wyświetlane ma skojarzony profil kolorów ICM, GDI+ nie będzie domyślnie używać tego profilu. Aby włączyć ICM dla Graphics, skonstruuj Graphics z usługi HDC po przekazaniu usługi HDC (i ICM_ON) do funkcji SetICMMode
. Następnie każdy rysunek wykonany przez Graphics zostanie dostosowany zgodnie z profilem ICM skojarzonym z urządzeniem wyświetlania. Włączenie zdarzenia ICM spowoduje niższą wydajność.
Stan kontekstu urządzenia (tryb mapowania, jednostka logiczna i podobne) podczas wywoływania FromHdc może mieć wpływ na renderowanie wykonywane przez Graphics.