WM_PRINTCLIENT mensagem

A mensagem WM_PRINTCLIENT é enviada a uma janela para solicitar que ela desenhe sua área de cliente no contexto do dispositivo especificado, mais comumente em um contexto de dispositivo de impressora.

Ao contrário de WM_PRINT, WM_PRINTCLIENT não é processado por DefWindowProc. Uma janela deve processar a mensagem WM_PRINTCLIENT por meio de uma função WindowProc definida pelo aplicativo para que ela seja usada corretamente.

LRESULT CALLBACK WindowProc(
  HWND hwnd, 
  UINT  uMsg, 
  WPARAM wParam, 
  LPARAM lParam     
);

Parâmetros

wParam

Um identificador para o contexto do dispositivo a ser desenhado.

lParam

As opções de desenho. Esse parâmetro pode usar um dos valores a seguir.

Valor Significado
PRF_CHECKVISIBLE
Desenha a janela somente se ela estiver visível.
PRF_CHILDREN
Desenha todas as janelas filhos visíveis.
PRF_CLIENT
Desenha a área do cliente da janela.
PRF_ERASEBKGND
Apaga a tela de fundo antes de desenhar a janela.
PRF_NONCLIENT
Desenha a área não cliente da janela.
PRF_OWNED
Desenha todas as janelas de propriedade.

 

Comentários

Uma janela pode processar essa mensagem da mesma maneira que WM_PAINT, exceto que BeginPaint e EndPaint não precisam ser chamados (um contexto de dispositivo é fornecido) e a janela deve desenhar toda a área do cliente em vez de apenas a região inválida.

O Windows que pode ser usado em qualquer lugar do sistema, como controles, deve processar essa mensagem. Provavelmente vale a pena que outras janelas processem essa mensagem também porque é relativamente fácil de implementar.

A função AnimateWindow exige que a janela que está sendo animada implemente a mensagem WM_PRINTCLIENT .

Requisitos

Requisito Valor
Cliente mínimo com suporte
Windows 2000 Professional [somente aplicativos da área de trabalho]
Servidor mínimo com suporte
Windows 2000 Server [somente aplicativos da área de trabalho]
Cabeçalho
Winuser.h (inclui Windows.h)

Confira também

Visão geral de pintura e desenho

Mensagens de pintura e desenho

AnimateWindow

Beginpaint

Endpaint

WM_PAINT