Graphics.FromHdc Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Belirtilen tanıtıcıdan cihaz bağlamı için yeni bir Graphics oluşturur.
Aşırı Yüklemeler
FromHdc(IntPtr, IntPtr) |
Belirtilen tanıtıcıdan bir cihaz bağlamı ve bir cihaz tanıtıcısına yeni bir Graphics oluşturur. |
FromHdc(IntPtr) |
Belirtilen tanıtıcıdan cihaz bağlamı için yeni bir Graphics oluşturur. |
FromHdc(IntPtr, IntPtr)
- Kaynak:
- Graphics.cs
- Kaynak:
- Graphics.cs
- 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 bir Graphics 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 bir Graphics döndürür.
Açıklamalar
FromHdc yöntemi tarafından oluşturulan Graphics ve ilgili kaynakları serbest bırakmak için her zaman Dispose yöntemini çağırmalısınız.
Görüntü cihazının ilişkilendirilmiş bir ICM renk profili olsa bile, GDI+ varsayılan olarak bu profili kullanmaz. bir Graphicsiçin ICM'yi etkinleştirmek için, HDC'yi (ve ICM_ON) SetICMMode
işlevine geçirdikten sonra HDC'den Graphics oluşturur. Ardından Graphics tarafından 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.
FromHdc çağırdığınız sırada cihaz bağlamının (eşleme modu, mantıksal birim ve benzeri) durumu, Graphicstarafından yapılan işlemeyi etkileyebilir.
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
Belirtilen tanıtıcıdan cihaz bağlamı için yeni bir Graphics 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 bir Graphics döndürür.
Örnekler
Aşağıdaki kod örneği Windows Forms ile kullanılmak üzere tasarlanmıştır ve Paint olay işleyicisinin bir parametresi olan PaintEventArgse
gerektirir. Kod aşağıdaki eylemi gerçekleştirir:
hdc
bir iç işaretçi türü değişkeni oluşturur ve formun grafik nesnesinin cihaz bağlamı için tanıtıcıya ayarlar.hdc
kullanarak yeni bir grafik nesnesi oluşturur.Yeni grafik nesnesiyle (ekranda) bir dikdörtgen çizer.
hdc
kullanarak yeni 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
FromHdc yöntemi tarafından oluşturulan Graphics ve ilgili kaynakları serbest bırakmak için her zaman Dispose yöntemini çağırmalısınız.
Görüntü cihazının ilişkilendirilmiş bir ICM renk profili olsa bile, GDI+ varsayılan olarak bu profili kullanmaz. bir Graphicsiçin ICM'yi etkinleştirmek için, HDC'yi (ve ICM_ON) SetICMMode
işlevine geçirdikten sonra HDC'den Graphics oluşturur. Ardından Graphics tarafından 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.
FromHdc çağırdığınız sırada cihaz bağlamının (eşleme modu, mantıksal birim ve benzeri) durumu, Graphicstarafından yapılan işlemeyi etkileyebilir.