Método Graphics::GetHDC (gdiplusgraphics.h)

O método Graphics::GetHDC obtém um identificador para o contexto do dispositivo associado a esse objeto Graphics .

Sintaxe

HDC GetHDC();

Valor retornado

Tipo: HDC

Esse método retorna um identificador para o contexto do dispositivo associado a este objeto Graphics .

Comentários

Cada chamada para o método Graphics::GetHDC de um objeto Graphics deve ser emparelhada com uma chamada para o método Graphics::ReleaseHDC desse mesmo objeto Graphics . Não chame nenhum método do objeto Graphics entre as chamadas para Graphics::GetHDC e Graphics::ReleaseHDC. Se você tentar chamar um método do objeto Graphics entre Graphics::GetHDC e Graphics::ReleaseHDC, o método falhará e retornará ObjectBusy.

Todas as alterações de estado feitas no contexto do dispositivo entre Graphics::GetHDC e Graphics::ReleaseHDC serão ignoradas pelo GDI+ e não serão refletidas na renderização feita pelo GDI+.

Exemplos

A função a seguir usa GDI+ para desenhar uma elipse, usa GDI para desenhar um retângulo e, por fim, usa GDI+ para desenhar uma linha. O único parâmetro da função é um ponteiro para um objeto GDI+ Graphics . O código chama o método Graphics::D rawEllipse desse objeto Graphics para desenhar uma elipse . Em seguida, o código chama o método Graphics::GetHDC para obter um identificador para o contexto do dispositivo associado ao objeto Graphics . O código desenha um retângulo passando o identificador de contexto do dispositivo para a função Retângulo GDI. O código chama o método Graphics::ReleaseHDC do objeto Graphics e usa o objeto Graphics para desenhar uma linha.

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 com suporte Windows XP, Windows 2000 Professional [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows 2000 Server [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho gdiplusgraphics.h (inclua Gdiplus.h)
Biblioteca Gdiplus.lib
DLL Gdiplus.dll

Confira também

Alterações no modelo de programação

Métodos FromHDC

Elementos gráficos

Construtores gráficos

Graphics::ReleaseHDC