Metodo Graphics::GetHDC (gdiplusgraphics.h)
Il metodo Graphics::GetHDC ottiene un handle per il contesto di dispositivo associato a questo oggetto Graphics .
Sintassi
HDC GetHDC();
Valore restituito
Tipo: HDC
Questo metodo restituisce un handle al contesto di dispositivo associato a questo oggetto Graphics .
Commenti
Ogni chiamata al metodo Graphics::GetHDC di un oggetto Graphics deve essere associata a una chiamata al metodo Graphics::ReleaseHDC dello stesso oggetto Graphics . Non chiamare alcun metodo dell'oggetto Graphics tra le chiamate a Graphics::GetHDC e Graphics::ReleaseHDC. Se si tenta di chiamare un metodo dell'oggetto Graphics tra Graphics::GetHDC e Graphics::ReleaseHDC, il metodo avrà esito negativo e restituirà ObjectBusy.
Qualsiasi modifica dello stato apportata al contesto del dispositivo tra Graphics::GetHDC e Graphics::ReleaseHDC verrà ignorata da GDI+ e non verrà riflessa nel rendering eseguito da GDI+.
Esempio
La funzione seguente usa GDI+ per disegnare un'ellisse, quindi usa GDI per disegnare un rettangolo e infine usa GDI+ per disegnare una linea. Il parametro di una funzione è un puntatore a un oggetto GDI+ Graphics . Il codice chiama il metodo Graphics::D rawEllipse dell'oggetto Graphics per disegnare un'ellisse. Il codice chiama quindi il metodo Graphics::GetHDC per ottenere un handle al contesto di dispositivo associato all'oggetto Graphics . Il codice disegna un rettangolo passando l'handle del contesto di dispositivo alla funzione GDI Rectangle . Il codice chiama il metodo Graphics::ReleaseHDC dell'oggetto Graphics e quindi usa l'oggetto Graphics per disegnare una linea.
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);
}
Requisiti
Client minimo supportato | Windows XP, Windows 2000 Professional [solo app desktop] |
Server minimo supportato | Windows 2000 Server [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | gdiplusgraphics.h (include Gdiplus.h) |
Libreria | Gdiplus.lib |
DLL | Gdiplus.dll |