PrintHookProc

De PrintHookProc haak procedure is een toepassing of bibliotheek gedefinieerde callback-functie die wordt gebruikt met de functie PrintDlg . De functie ontvangt berichten of berichten die bestemd zijn voor de standaard dialoogvenster vak procedure van gemeenschappelijk in het dialoogvenster afdrukken.

Het LPPRINTHOOKPROC type definieert een pointer naar deze callback functie. PrintHookProc is een tijdelijke aanduiding voor de naam van de toepassing- of bibliotheek gedefinieerde functie.

(UINT CALLBACK PrintHookProc HWND  hdlg, / / ingang naar het dialoogvenster vak vensterUINTuiMsg, / / bericht idWPARAMwParam, / / bericht parameterLPARAMlParam / / bericht parameter);
 

Parameters

hdlg
Ingang naar de gemeenschappelijke dialoogvenster vak venster afdrukken waarvoor het bericht is bestemd.
uiMsg
Identificeert het bericht wordt ontvangen.
wParam
Aanvullende informatie over het bericht aangeeft. De exacte betekenis hangt af van de waarde van de parameter uiMsg.
lParam
Aanvullende informatie over het bericht aangeeft. De exacte betekenis hangt af van de waarde van de parameter uiMsg.

Als de parameter uiMsg het bericht WM_INITDIALOG geeft , is lParam een aanwijzer naar een PRINTDLG structuur met de waarden die zijn opgegeven toen de common dialog box is gemaakt.

Retourwaarden

Als de haak procedure nul retourneert, verwerkt de verstekprocedure dialoogvenster vak het bericht.

Als de haak procedure een andere waarde dan nul retourneert, negeert de verstekprocedure dialoogvenster vak het bericht.

Opmerkingen

Wanneer u de functie PrintDlg gebruiken om te maken een gemeenschappelijk dialoogvenster afdrukken , kunt u een PrintHookProc haak procedure voor het verwerken van berichten of berichten die bestemd zijn voor het dialoogvenster vak procedure voorzien. Opdat de haak procedure, de PRINTDLG structuur die u aan de functie dialoogvenster creatie doorgegeven te gebruiken. Geef het adres van de haak-procedure in de lpfnPrintHook -lid en de PD_ENABLEPRINTHOOK vlag in de vlaggen lid opgeven.

De verstekprocedure dialoogvenster vak verwerkt het WM_INITDIALOG bericht voordat dit wordt doorgegeven aan de haak-procedure. Voor alle andere berichten ontvangt de haak procedure het bericht eerst. Vervolgens, de geretourneerde waarde van de haak procedure bepaalt of de verstekprocedure dialoogvenster het bericht verwerkt of genegeerd.

Als de procedure haak het WM_CTLCOLORDLG bericht verwerkt, moet deze resulteren in een geldige borstel handvat voor het schilderen van de achtergrond van het dialoogvenster. In het algemeen, als de procedure haak een WM_CTLCOLOR-bericht verwerkt, moet het een geldige borstel handvat voor het schilderen van de achtergrond van het opgegeven besturingselement terugkeren.

De EndDialog -functie niet aanroepen vanuit de haak procedure. In plaats daarvan, kan de procedure haak roepen de PostMessage -functie om een WM_COMMAND-bericht met de waarde IDABORT naar het dialoogvenster vak procedure. Posten IDABORT sluit u het dialoogvenster en veroorzaakt de dialoogvenster vak functie FALSE. Als u weten waarom de haak procedure het dialoogvenster gesloten wilt, dient u uw eigen communicatiemechanisme voor tussen de haak procedure en uw toepassing.

Subklasse kunt u de standaard besturingselementen van het dialoogvenster gemeenschappelijk. De gemeenschappelijke dialoogvenster vak procedure kan evenwel ook subklasse de besturingselementen. Hierdoor moet u subklasse besturingselementen wanneer uw haak procedure het WM_INITDIALOG bericht verwerkt. Dit zorgt ervoor dat uw subklasse procedure de controle-specifieke berichten voor de subklasse procedure door het dialoogvenster vak procedure ontvangt.

Syntaxisinfo

nbsp; Windows &NT: versie 3.1 of hoger vereist.
Windows:Windows 95 of hoger vereist.
Windows CE:Versie 2.0 of hoger vereist.
Header:Verklaard in commdlg.h.
Bibliotheek importeren:Gebruiker gedefinieerde.

Zie ook

Overzicht van bibliotheek het gemeenschappelijk dialoogvenster, gemeenschappelijk dialoogvenster vak functies, EndDialog, PostMessage, PrintDlg, PRINTDLG, WM_INITDIALOG, WM_CTLCOLORDLG

Index