O procedimento de gancho PrintHookProc é um função callback application-defined ou library-defined que é usado com a função PrintDlg . A função recebe mensagens ou notificações destinadas o procedimento caixa de diálogo padrão da caixa de diálogo comum da impressão.
O LPPRINTHOOKPROC tipo define um ponteiro para este função callback. PrintHookProc é um espaço reservado para o nome função application-defined ou library-defined.
(UINT CALLBACK PrintHookProc HWND hdlg, / / identificador para a janela de caixa de diálogoUINTpasta uiMsg, / / mensagem identificadorWPARAMwParam, / / parâmetro da mensagemLPARAMlParam / / parâmetro da mensagem);
Se a pasta uiMsg parâmetro indica o WM_INITDIALOG mensagem, lParam é um ponteiro para uma estrutura PRINTDLG contendo que os valores especificados quando a caixa de diálogo comum foi criada.
Se o procedimento gancho retorna zero, o procedimento de caixa de diálogo padrão processa a mensagem.
Se o procedimento gancho retorna um valor diferente de zero, o procedimento de caixa de diálogo padrão ignora a mensagem.
Quando você usa a função PrintDlg para criar uma Imprimir caixa de diálogo comum, você pode fornecer um PrintHookProc procedimento de gancho para processo mensagens ou notificações destinadas o procedimento caixa de diálogo. Para habilitar o procedimento gancho, use o PRINTDLG estrutura que é passado para a função de criação diálogo. Especifique o endereço do procedimento de gancho in a lpfnPrintHook membro e especificar o sinalizador PD_ENABLEPRINTHOOK in o sinalizadores membro.
O procedimento de caixa de diálogo padrão processa a mensagem WM_INITDIALOG antes de passá-lo para o procedimento de gancho. Para todas as outras mensagens, o procedimento gancho recebe a mensagem primeiro. Em seguida, o valor de retorno do procedimento de gancho determina se o procedimento caixa de diálogo usar como padrão processa a mensagem ou ignora-lo.
Se o procedimento gancho processa a mensagem WM_CTLCOLORDLG , ela deve retornar um válido identificador pincel de pintura de segundo plano da caixa de diálogo. Em geral, se o procedimento gancho processa qualquer WM_CTLCOLOR message, ela deve retornar um válido identificador pincel de pintura de segundo plano do controle especificado.
Não chame o EndDialog função do procedimento de gancho. Em vez disso, o procedimento de gancho pode chamar o PostMessage função para postar uma mensagem WM_COMMAND com o valor IDABORT para o procedimento caixa de diálogo. Lançamento IDABORT Fecha a caixa diálogo e faz com que a função de caixa de diálogo retornar FALSE. Se você precisa saber por que o procedimento gancho fechado a caixa de diálogo, você deve fornecer seu próprio mecanismo de comunicação entre o procedimento de gancho e seu aplicativo.
Você pode subclasse controla o padrão da caixa de diálogo comum. No entanto, o procedimento de caixa de diálogo comum pode também subclasse controles. Por causa disto, você deverá controles subclasse quando o procedimento gancho processa a mensagem WM_INITDIALOG. Isso garante que o procedimento subclasse recebe as mensagens de controle-específica antes do procedimento subclasse definido pelo procedimento caixa de diálogo.
nbsp; Windows &NT: requer a versão 3.1 ou posterior.
Windows:Requer o Windows 95 ou posterior.
Windows CE:Requer a versão 2.0 ou posterior.
Cabeçalho:Declaradas no commdlg.h.
Biblioteca de importação:Definido pelo usuário.
Visão geral de biblioteca de caixa de diálogo comum, funções de caixa de diálogo comuns, EndDialog, PostMessage, PrintDlg, PRINTDLG, WM_INITDIALOG, WM_CTLCOLORDLG