Método Graphics::GetHDC (gdiplusgraphics.h)
El método Graphics::GetHDC obtiene un identificador para el contexto del dispositivo asociado a este objeto Graphics .
Sintaxis
HDC GetHDC();
Valor devuelto
Tipo: HDC
Este método devuelve un identificador al contexto del dispositivo asociado a este objeto Graphics .
Comentarios
Cada llamada al método Graphics::GetHDC de un objeto Graphics debe emparejarse con una llamada al método Graphics::ReleaseHDC de ese mismo objeto Graphics . No llame a ningún método del objeto Graphics entre las llamadas a Graphics::GetHDC y Graphics::ReleaseHDC. Si intenta llamar a un método del objeto Graphics entre Graphics::GetHDC y Graphics::ReleaseHDC, se producirá un error en el método y devolverá ObjectBusy.
GDI+ omitirá los cambios de estado realizados en el contexto del dispositivo entre Graphics::GetHDC y Graphics::ReleaseHDC y GDI+ no se reflejará en la representación realizada por GDI+.
Ejemplos
La siguiente función usa GDI+ para dibujar una elipse y, a continuación, usa GDI para dibujar un rectángulo y, por último, usa GDI+ para dibujar una línea. El único parámetro de la función es un puntero a un objeto Graphics de GDI+. El código llama al método Graphics::D rawEllipse de ese objeto Graphics para dibujar una elipse. A continuación, el código llama al método Graphics::GetHDC para obtener un identificador al contexto del dispositivo asociado al objeto Graphics . El código dibuja un rectángulo pasando el identificador de contexto del dispositivo a la función Rectangle de GDI. El código llama al método Graphics::ReleaseHDC del objeto Graphics y, a continuación, usa el objeto Graphics para dibujar una línea.
VOID Example_GetReleaseHDC(Graphics* g)
{
Pen pen(Color(255, 0, 0, 255));
g->DrawEllipse(&pen, 10, 10, 100, 50); // GDI+
HDC hdc = g->GetHDC();
// Make GDI calls, but don't call any methods
// on g until after the call to ReleaseHDC.
Rectangle(hdc, 120, 10, 220, 60); // GDI
g->ReleaseHDC(hdc);
// Ok to call methods on g again.
g->DrawLine(&pen, 240, 10, 340, 60);
}
Requisitos
Cliente mínimo compatible | Windows XP, Windows 2000 Professional [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows 2000 Server [solo aplicaciones de escritorio] |
Plataforma de destino | Windows |
Encabezado | gdiplusgraphics.h (include Gdiplus.h) |
Library | Gdiplus.lib |
Archivo DLL | Gdiplus.dll |