IPrintDialogCallback::HandleMessage

[To wstępne dokumentacji oraz z zastrzeżeniem zmiany.]

Funkcja PrintDlgEx wywołuje metodę HandleMessage dać aplikacji możliwość obsługi wiadomości wysłane aby oknie dialogowym dziecka w dolnej części strony Ogólne arkusza właściwości drukowania . Okno dialogowe dziecko zawiera formanty podobne do okna dialogowego Drukuj.

(HRESULT HandleMessage HWNDhDlg,UINTuMsg,WPARAMwParam,FIKCYJNYMIfikcyjnymi,LRESULT* pResult);
 

Parametry

hDlg
Dojście do okna dialogowego dziecka w dolnej części strony Ogólne.
uMsg
Identyfikuje wiadomość odbierany.
wParam
Określa dodatkowe informacje na temat wiadomości. Dokładne znaczenie zależy od wartości parametru uMsg.
fikcyjnymi
Określa dodatkowe informacje na temat wiadomości. Dokładne znaczenie zależy od wartości parametru uMsg.

Jeżeli parametr uMsg określa komunikat WM_INITDIALOG , fikcyjnymi jest wskaźnik do struktury PRINTDLGEX zawierających wartości określone podczas tworzenia arkusza właściwości.

pResult
Wskaźnik do zmiennej, który należy ustawić na wskazuje wynik ma być zwrócony przez okno dialogowe dla tej wiadomości.

Zwraca wartości

Zwraca wartość S_OK, jeśli implementacji HandleMessage obsługi wiadomości. W tym przypadku funkcja PrintDlgEx nie wykonuje żadnych domyślna obsługa wiadomości.

Zwracają S_FALSE, jeśli chcesz, aby PrintDlgEx do wykonywania jej domyślna obsługa wiadomości.

Uwagi

Dla wiadomości przekazywane WM_NOTIFY komunikat, należy użyć SetWindowLong funkcji z wartością DWL_MSGRESULT ustawić wartość zwracany. Podczas wywoływania SetWindowLongza pomocą GetParent (hDlg) ustawić wartość DWL_MSGRESULT stronie Ogólne , który jest elementem nadrzędnym okno podrzędne.

Procedura Domyślnie okno dialogowe pole okno podrzędne w dolnej części strony Ogólne przetwarza wiadomość WM_INITDIALOG przed przekazaniem go do metody HandleMessage . Dla wszystkich innych wiadomości, wysłane do okna podrzędnego HandleMessage odbiera wiadomości po raz pierwszy. Następnie HandleMessage zwraca wartość określa, czy procedury okna dialogowego domyślnie przetwarza wiadomość zignoruje ją.

Jeśli HandleMessage przetwarza wiadomość WM_CTLCOLORDLG , musi ona zwracać do malowania tła okna dialogowego uchwytu ważne pędzla. Ogólnie Jeśli HandleMessage 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 metody HandleMessage . Zamiast tego HandleMessage można wywołać funkcję PostMessage , aby ogłosić wiadomość WM_COMMAND z wartością IDABORT procedurze pole dialogowe. Księgowanie IDABORT zamyka arkusz właściwości drukowania i powoduje PrintDlgEx zwraca PD_RESULT_CANCEL członka dwResultAction struktury PRINTDLGEX . Jeśli użytkownik chce wiedzieć, dlaczego HandleMessage zamknąć okno dialogowe, należy podać swój własny mechanizm komunikacji między metodą HandleMessage i aplikacji.

Możesz podklasy standardowych formantów okna dialogowego dziecko pole w dolnej części strony Ogólne . Te formanty standardowe są podobne do tych ustalonych w oknie dialogowym Drukuj . Jednakże procedury pole dialogowe domyślne może również podklas formantów. Z tego powodu należy podklas formantów podczas HandleMessage 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: wymaga wersji 5.0 lub nowszej.
Systemu Windows:Nieobsługiwane.
Systemu Windows CE:Nieobsługiwane.
Nagłówka:Zadeklarowane w commdlg.h.

Zobacz też

Wspólny omówienie biblioteki okna dialogowego, IPrintDialogCallback, EndDialog, PostMessage, PrintDlgEx, PRINTDLGEX, SetWindowLong, WM_COMMAND, WM_CTLCOLORDLG, WM_INITDIALOG, WM_NOTIFY

Index