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 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
hdc
yeni bir grafik nesnesi oluşturur.Yeni grafik nesnesiyle (ekranda) bir dikdörtgen çizer.
kullanarak
hdc
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
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
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin