PrintHookProc

Procedura haka PrintHookProc jest funkcją zwrotne definiowane przez aplikację lub biblioteki, który jest używany przez funkcję PrintDlg . Funkcja odbiera wiadomości lub zgłoszeń przeznaczonych do procedury pole dialogowe domyślne wspólne okno dialogowe Drukuj.

Typ LPPRINTHOOKPROC określa wskaźnik do funkcji wywołania zwrotnego. PrintHookProc jest symbolem zastępczym nazwy funkcji zdefiniowanych przez aplikację lub zdefiniowany biblioteki.

(UINT wywołania zwrotnego PrintHookProc HWND  hdlg, / / dojście do okna dialogowego poleUINTuiMsg, / / wiadomości identyfikatorWPARAMwParam, / / wiadomości parametrFIKCYJNYMIfikcyjnymi / / wiadomości parametr);
 

Parametry

hdlg
Dojście do okna Drukuj do pole wspólne okno dialogowe dla których przeznaczony jest wiadomość.
uiMsg
Identyfikuje wiadomość odbierany.
wParam
Określa dodatkowe informacje na temat wiadomości. Dokładne znaczenie zależy od wartości parametru uiMsg.
fikcyjnymi
Określa dodatkowe informacje na temat wiadomości. Dokładne znaczenie zależy od wartości parametru uiMsg.

Jeżeli parametr uiMsg określa komunikat WM_INITDIALOG , fikcyjnymi jest wskaźnik do struktury PRINTDLG zawierających wartości określone podczas tworzenia wspólne okno dialogowe.

Zwraca wartości

Jeśli procedura haka zwraca zero, procedury pole dialogowe domyślne przetwarza wiadomość.

Jeśli procedura haka zwraca wartość różną od zera, procedury pole dialogowe domyślne ignoruje wiadomości.

Uwagi

Podczas korzystania z funkcji PrintDlg utworzyć wspólne okno dialogowe Drukuj , można zapewnić procedura haka PrintHookProc do przetwarzania wiadomości lub zgłoszeń przeznaczonych do procedury pole dialogowe. Aby włączyć procedura haka, użyj struktury PRINTDLG , który zostanie przekazany do funkcji Tworzenie okna dialogowego. Określ adres procedura haka członka lpfnPrintHook i określić flagi PD_ENABLEPRINTHOOK Członkowskich flagi.

Procedury pole dialogowe domyślne przetwarza wiadomość WM_INITDIALOG przed przekazaniem go do procedura haka. Dla wszystkich innych wiadomości procedura haka odbierze komunikat po raz pierwszy. Następnie wartość zwracany procedura haka określa, czy procedury okna dialogowego domyślnie przetwarza wiadomość zignoruje ją.

Jeśli procedura haka przetwarza wiadomość WM_CTLCOLORDLG , musi ona zwracać do malowania tła okna dialogowego uchwytu ważne pędzla. Ogólnie jeśli procedura haka przetwarza wiadomości WM_CTLCOLOR *, to musi zwracać obsługę pędzla prawidłowy obraz tła określonych kontroli.

Nie wywołuj funkcję EndDialog z procedura haka. Zamiast tego procedura haka może wywołać funkcję PostMessage , aby ogłosić wiadomość WM_COMMAND z wartością IDABORT procedurze pole dialogowe. Księgowanie IDABORT zamyka okno dialogowe i powoduje, że funkcja pole dialogowe zwraca FALSE. Jeśli użytkownik chce wiedzieć, dlaczego procedura haka zamknięte okno dialogowe, należy podać swój własny mechanizm komunikacji między procedura haka i aplikacji.

Możesz podklas formantów standardowych wspólne okno dialogowe. Jednakże wspólnej procedurze pole dialogowe może również podklas formantów. Z tego powodu należy podklas formantów podczas procedura haka przetwarza wiadomość WM_INITDIALOG. Gwarantuje to, że procedura podklasy odbiera wiadomości specyficzne dla kontroli przed procedury podklasy ustala procedury pole dialogowe.

Skrócone informacje

nbsp; Windows &NT: wymagana wersja 3.1 lub nowsza.
Systemu Windows:Wymaga systemu Windows 95 lub nowszego.
Systemu Windows CE:Wymaga w wersji 2.0 lub nowszej.
Nagłówka:Zadeklarowane w commdlg.h.
Importowanie biblioteki:Zdefiniowane przez użytkownika.

Zobacz też

Wspólny omówienie biblioteki okna dialogowego, wspólne funkcje pole dialogowe, EndDialog, PostMessage, PrintDlg, PRINTDLG, WM_INITDIALOG, WM_CTLCOLORDLG

Index