PageSetupHook

PageSetupHook hook-prosedyre er en Programdefinert eller bibliotek-definert tilbakeringingsfunksjonen brukes sammen med funksjonen for PageSetupDlg . Funksjonen mottar meldinger eller meldinger som er ment for standard dialogboksen boksen prosedyre av den felles dialogboksen Utskriftsformat.

LPPAGESETUPHOOK -typen definerer en peker til denne tilbakeringingsfunksjonen for. PageSetupHook er en plassholder for program- eller bibliotek-definert funksjonsnavnet.

() UINT TILBAKERINGING PageSetupHook HWND  hdlg, / / håndtere til boksen dialogvindaugetUINTuiMsg, / / message identifikatorWPARAMwParam, / / message parameterenLPARAMlParam / / message parameteren);
 

Parametere

hdlg
Håndtere til Utskriftsformat -boksen dialogvindauget som meldingen er ment.
uiMsg
Identifiserer meldingen mottas.
wParam
Angir tilleggsinformasjon om meldingen. Den eksakte betydningen er avhengig av verdien for parameteren uiMsg.
lParam
Angir tilleggsinformasjon om meldingen. Den eksakte betydningen er avhengig av verdien for parameteren uiMsg.

Hvis parameteren uiMsg angir meldingen som er WM_INITDIALOG , er lParam en peker til en PAGESETUPDLG struktur med verdiene som er angitt når dialogboksen felles ble opprettet.

Returverdier

Hvis Bindingsprosedyren returnerer null, standard dialogboksen boksen fremgangsmåten, behandler meldingen.

Hvis Bindingsprosedyren returnerer en ikke-nullverdi, ignorerer standard dialogboksen boksen prosedyre meldingen.

Merknader

Når du bruker PageSetupDlg -funksjonen til å opprette en felles dialogboksen Utskriftsformat , kan du gi en PageSetupHook hook-prosedyre for å behandle meldinger eller meldinger som er ment for dialogboksen boksen prosedyre. Bruk PAGESETUPDLG -strukturen som du sendes til dialogboksen oppretting av funksjonen for å aktivere hook-prosedyre. Angi pekeren til Bindingsprosedyren i lpfnPageSetupHook -medlem og angi flagget PSD_ENABLEPAGESETUPHOOK i flaggene -medlem.

Standard dialogboksen boksen prosedyre behandler meldingen WM_INITDIALOG før den sendes til hook-prosedyre. For alle andre meldinger mottar Bindingsprosedyren meldingen først. Deretter, returverdien for Bindingsprosedyren bestemmer om standard dialogboksen fremgangsmåten, behandler meldingen eller ignorerer den.

Hvis Bindingsprosedyren behandler WM_CTLCOLORDLG meldingen, må den returnere et gyldig pensel håndtak for å male bakgrunnen i dialogboksen. Generelt, hvis Bindingsprosedyren behandler meldinger WM_CTLCOLOR *, må den returnere et gyldig pensel håndtak for å male bakgrunnen for den angitte kontrollen.

Ikke kall funksjonen EndDialog fra hook-prosedyre. I stedet, Bindingsprosedyren kan kalle funksjonen PostMessage til å legge inn en WM_COMMAND-melding med IDABORT-verdien i dialogboksen boksen prosedyren. Postering av IDABORT lukker dialogboksen og fører til at dialogboksen boksen funksjonen returnerer USANN. Hvis du trenger å vite hvorfor Bindingsprosedyren lukket dialogboksen, må du gi din egen mekanisme for kommunikasjon mellom Bindingsprosedyren og programmet.

Du kan underklasse standardkontroller av den felles dialogboksen. Men kan den felles dialogboks boksen prosedyren også underklasse kontrollene. På grunn av dette bør du underklasse kontroller når din Bindingsprosedyren behandler meldingen WM_INITDIALOG. Dette sikrer at din underklasse prosedyren mottar kontroll-spesifikke meldinger før underklasse prosedyren angitt av dialogboksen boksen prosedyre.

Hurtiginformasjon

nbsp; Windows &NT: krever versjon 3.1 eller senere.
Windows:Krever Windows 95 eller senere.
Windows CE:Som ikke støttes.
Topptekst:Deklarert i commdlg.h.
Importere biblioteket:Brukerdefinerte.

Se også

Felles biblioteket dialogboksoversikt, felles dialogboksen fungerer, EndDialog, PageSetupDlg, PAGESETUPDLG, PostMessage, WM_INITDIALOG, WM_CTLCOLORDLG

Index