Método IPrintDialogCallback::HandleMessage (commdlg.h)
Chamado por PrintDlgEx para dar ao seu aplicativo a oportunidade de manipular mensagens enviadas para a caixa de diálogo filho na parte inferior da página Geral da Folha de Propriedades de Impressão. A caixa de diálogo filho contém controles semelhantes aos da caixa de diálogo Imprimir .
Sintaxe
HRESULT HandleMessage(
HWND hDlg,
UINT uMsg,
WPARAM wParam,
LPARAM lParam,
LRESULT *pResult
);
Parâmetros
hDlg
Digite: HWND
Um identificador para a caixa de diálogo filho na parte inferior da página Geral .
uMsg
Tipo: UINT
O identificador da mensagem que está sendo recebida.
wParam
Tipo: WPARAM
Informações adicionais sobre a mensagem. O significado exato depende do valor do parâmetro uMsg .
lParam
Tipo: LPARAM
Informações adicionais sobre a mensagem. O significado exato depende do valor do parâmetro uMsg .
Se o parâmetro uMsg indicar a mensagem WM_INITDIALOG , lParam será um ponteiro para uma estrutura PRINTDLGEX que contém os valores especificados quando a folha de propriedades foi criada.
pResult
Tipo: LRESULT*
Indica o resultado a ser retornado pelo procedimento da caixa de diálogo para a mensagem. O valor apontado deverá ser TRUE se você processar a mensagem, caso contrário, ela deverá ser FALSE ou qualquer valor apropriado de acordo com o tipo de mensagem.
Valor retornado
Tipo: HRESULT
Retorne S_OK se a implementação IPrintDialogCallback::HandleMessage tiver manipulado a mensagem. Nesse caso, a função PrintDlgEx não executa nenhum tratamento de mensagem padrão.
Retorne S_FALSE se quiser que PrintDlgEx execute seu tratamento de mensagens padrão.
Comentários
Para mensagens de notificação passadas pela mensagem WM_NOTIFY , você deve usar a função SetWindowLong com o valor DWL_MSGRESULT para definir um valor retornado. Ao chamar SetWindowLong, use GetParent(hDlg) para definir o valor DWL_MSGRESULT da página Geral , que é o pai da janela filho.
O procedimento da caixa de diálogo padrão para a janela filho na parte inferior da página Geral processa a mensagem WM_INITDIALOG antes de passá-la para o método HandleMessage . Para todas as outras mensagens enviadas para a janela filho, HandleMessage recebe a mensagem primeiro. Em seguida, o valor retornado HandleMessage determina se o procedimento de diálogo padrão processa a mensagem ou a ignora.
Se HandleMessage processar a mensagem WM_CTLCOLORDLG , ela deverá retornar um identificador de pincel válido para pintar a tela de fundo da caixa de diálogo. Em geral, se HandleMessage processar qualquer mensagem WM_CTLCOLOR* , ele deverá retornar um identificador de pincel válido para pintar a tela de fundo do controle especificado.
Não chame a função EndDialog do método HandleMessage . Em vez disso, HandleMessage pode chamar a função PostMessage para postar uma mensagem WM_COMMAND com o valor IDABORT no procedimento da caixa de diálogo. A postagem de IDABORT fecha a Folha de Propriedades de Impressão e faz com que PrintDlgEx retorne PD_RESULT_CANCEL no membro dwResultAction da estrutura PRINTDLGEX . Se você precisar saber por que HandleMessage fechou a caixa de diálogo, forneça seu próprio mecanismo de comunicação entre o método HandleMessage e seu aplicativo.
Você pode subclasse os controles padrão da caixa de diálogo filho na parte inferior da página Geral . Esses controles padrão são semelhantes aos encontrados na caixa de diálogo Imprimir . No entanto, o procedimento da caixa de diálogo padrão também pode subclasse dos controles. Por isso, você deve controlar a subclasse quando HandleMessage processar a mensagem WM_INITDIALOG . Isso garante que o procedimento de subclasse receba mensagens específicas do controle antes do procedimento de subclasse definido pelo procedimento da caixa de diálogo.
Requisitos
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] |
Plataforma de Destino | Windows |
Cabeçalho | commdlg.h (inclua Windows.h) |
DLL | Comdlg32.dll |
Confira também
Biblioteca de caixas de diálogo comuns
Conceitual
Outros recursos
Referência