Objetos gráficos
O Windows fornece uma variedade de ferramentas de desenho a serem usadas em contextos de dispositivo. Ele fornece canetas para traçar linhas, pincéis para preencher interiores e fontes para desenhar texto. O MFC fornece classes de objeto gráfico equivalentes às ferramentas de desenho do Windows. A tabela a seguir mostra as classes disponíveis e os tipos de identificador de GDI (interface de dispositivo gráfico) equivalentes do Windows.
Observação
Para obter mais informações, confira a documentação do SDK GDI+.
Este artigo explica o uso dessas classes de objeto gráfico:
Classes de objetos GDI do Windows
Classe | Tipos de identificador do Windows |
---|---|
CPen | HPEN |
CBrush | HBRUSH |
CFont | HFONT |
CBitmap | HBITMAP |
CPalette | HPALETTE |
CRgn | HRGN |
Observação
A classe CImage fornece suporte a bitmap aprimorado.
Cada classe de objeto gráfico na biblioteca de classes tem um construtor que permite criar objetos gráficos dessa classe, que você deve inicializar com a função de criação apropriada, como CreatePen
.
Cada classe de objeto gráfico na biblioteca de classes tem um operador de conversão que converterá um objeto do MFC para o identificador do Windows associado. O identificador resultante é válido até que o objeto associado o desanexe. Use a função membro do objeto Detach
para desanexar o identificador.
O código a seguir converte um objeto CPen
em um identificador do Windows:
CPen myPen;
myPen.CreatePen(PS_COSMETIC, 1, RGB(255, 255, 0));
HPEN hMyPen = (HPEN)myPen;
Para criar um objeto gráfico em um contexto de dispositivo
Defina um objeto gráfico no quadro de pilha. Inicialize o objeto com a função de criação específica do tipo, como
CreatePen
. Como alternativa, inicialize o objeto no construtor. Consulte a discussão sobre a criação de um estágio e dois estágios, que fornece código de exemplo.Selecione o objeto no contexto atual do dispositivo, salvando o objeto gráfico antigo que foi selecionado antes.
Quando terminar com o objeto gráfico atual, selecione o objeto gráfico antigo de volta no contexto do dispositivo para restaurar seu estado.
Permita que o objeto gráfico alocado por quadro seja excluído automaticamente quando o escopo for encerrado.
Observação
Se você usar um objeto gráfico repetidamente, poderá alocá-lo uma vez e selecioná-lo em um contexto de dispositivo sempre que for necessário. Certifique-se de excluir esse objeto quando você não precisar mais dele.