IPrintDialogCallback::HandleMessage

[Dit is voorlopige documentatie en onderhevig aan veranderingen.]

De PrintDlgEx functie roept de methode HandleMessage uw toepassing een kans te geven om berichten die worden verzonden naar het dialoogvenster kind in het onderste gedeelte van de pagina Algemeen van het eigenschappenvenster voor afdrukken . Het dialoogvenster kind bevat besturingselementen die vergelijkbaar zijn met die van het dialoogvenster afdrukken.

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

Parameters

hDlg
Ingang naar het dialoogvenster kind in het onderste gedeelte van de pagina Algemeen.
uMsg
Identificeert het bericht wordt ontvangen.
wParam
Aanvullende informatie over het bericht aangeeft. De exacte betekenis hangt af van de waarde van de parameter uMsg.
lParam
Aanvullende informatie over het bericht aangeeft. De exacte betekenis hangt af van de waarde van de parameter uMsg.

Als de parameter uMsg het bericht WM_INITDIALOG geeft , is lParam een aanwijzer naar een PRINTDLGEX structuur met de waarden die zijn opgegeven toen het eigenschappenvenster is gemaakt.

pResult
Pointer naar een variabele die u instellen moet om aan te geven het resultaat moet worden gegeven door het dialoogvenster voor het bericht.

Retourwaarden

Return S_OK als uw HandleMessage implementatie behandeld het bericht. In dit geval voert de PrintDlgEx functie geen elke standaard-berichtafhandeling.

S_FALSE retourneren als u wilt dat PrintDlgEx uit te voeren zijn standaard-berichtafhandeling.

Opmerkingen

Voor meldingen doorgegeven door de WM_NOTIFY bericht, moet u de functie SetWindowLong met de DWL_MSGRESULT waarde een retourwaarde instelt. Als u SetWindowLongaanroept, gebruik GetParent (hDlg) de DWL_MSGRESULT waarde van de algemene pagina, die is van het bovenliggende object van het onderliggende venster.

De standaard dialoogvenster vak procedure voor het onderliggende venster in het onderste gedeelte van de pagina Algemeen verwerkt het WM_INITDIALOG bericht voordat dit wordt doorgegeven aan de methode HandleMessage . Voor alle andere berichten aan het onderliggende venster, ontvangt HandleMessage het bericht eerst. Dan terug de HandleMessage waarde bepaalt de verstekprocedure dialoogvenster het bericht verwerkt of genegeerd.

Als HandleMessage 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 HandleMessage alle WM_CTLCOLOR-berichten worden 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 HandleMessage methode. In plaats daarvan, kunt HandleMessage de PostMessage -functie een WM_COMMAND -bericht met de waarde IDABORT naar het dialoogvenster vak procedure aanroepen. Posten IDABORT sluit het eigenschappenvenster Print en veroorzaakt PrintDlgEx om terug te keren PD_RESULT_CANCEL in het dwResultAction lid van de PRINTDLGEX structuur. Als u weten waarom HandleMessage het dialoogvenster gesloten wilt, dient u uw eigen communicatiemechanisme voor tussen de HandleMessage -methode en uw toepassing.

U kunt de standaard besturingselementen van het dialoogvenster kind vak in het onderste gedeelte van de pagina Algemeen subklasse. Deze standaard besturingselementen zijn vergelijkbaar met die gevonden in het dialoogvenster afdrukken . Echter, de standaard dialoogvenster vak procedure kan ook subklasse de besturingselementen. Hierdoor moet u subklasse besturingselementen als HandleMessage het WM_INITDIALOG -bericht verwerkt. Dit zorgt ervoor dat uw subklasse procedure controle-specifieke berichten voor de subklasse procedure door het dialoogvenster vak procedure ontvangt.

Syntaxisinfo

nbsp; Windows &NT: versie 5.0 of hoger vereist.
Windows:Niet-ondersteunde.
Windows CE:Niet-ondersteunde.
Header:Verklaard in commdlg.h.

Zie ook

Overzicht van bibliotheek het gemeenschappelijk dialoogvenster, IPrintDialogCallback, EndDialog, PostMessage, PrintDlgEx, PRINTDLGEX, SetWindowLong, WM_COMMAND, WM_CTLCOLORDLG, WM_INITDIALOG, WM_NOTIFY

Index