IPrintDialogCallback::HandleMessage

[Dies ist vorläufige Dokumentation und Änderungenvorbehalten.]

Die PrintDlgEx -Funktion Ruft die HandleMessage -Methode der Anwendung die Möglichkeit Nachrichten gesendet, um das Dialogfeld Kind im unteren Teil der Seite Allgemein im Print -Eigenschaftsfenstergeben. Das Kind-Dialogfeld enthält Steuerelemente ähnlich denen im Dialogfeld " Drucken ".

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

Parameter

hDlg
Im unteren Teil der Seite Allgemein im Dialogfeld Kind behandeln.
uMsg
Identifiziert die Nachricht empfangen wird.
wParam
Gibt zusätzliche Informationen über die Nachricht. Die genaue Bedeutung hängt vom Wert des Parameters uMsg.
lParam
Gibt zusätzliche Informationen über die Nachricht. Die genaue Bedeutung hängt vom Wert des Parameters uMsg.

Wenn der Parameter uMsg die WM_INITDIALOG -Meldung angibt, ist lParam ein Zeiger auf eine PRINTDLGEX Struktur enthält die Werte angegeben, wenn das Eigenschaftenblatt erstellt wurde.

pResult
Zeiger auf eine Variable, die Sie festlegen sollten, geben Sie das Ergebnis im Dialogfeld für die Nachricht zurückgegeben werden soll.

Rückgabewerte

S_OK zurück, wenn die HandleMessage -Implementierung die Nachricht verarbeitet. In diesem Fall durchführen die PrintDlgEx -Funktion keine Standard-Nachrichtenverarbeitung.

S_FALSE zurück, wenn Sie PrintDlgEx ihre Nachricht Standardbehandlung durchführen möchten.

Bemerkungen

Für Benachrichtigungen durch übergeben der WM_NOTIFY -Meldung, müssen Sie die Funktion SetWindowLong mit dem DWL_MSGRESULT-Wert um einen Rückgabewert festzulegen. Wenn Sie SetWindowLongaufrufen, verwenden GetParent (hDlg) , DWL_MSGRESULT Wert der allgemeinen Seite, die das übergeordnete Element das untergeordnete Fenster ist.

Die Standard-Dialogfeldprozedur für das untergeordnete Fenster im unteren Teil der allgemeinen Seite verarbeitet die WM_INITDIALOG -Meldung vor der Übergabe an die HandleMessage -Methode. Für alle anderen Nachrichten, die an das untergeordnete Fenster erhält HandleMessage die Nachricht zuerst. Dann zurück die HandleMessage , Wert bestimmt, ob das Standard-Dialogfeld-Verfahren die Nachricht verarbeitet oder es ignoriert.

Wenn HandleMessage die WM_CTLCOLORDLG -Nachricht verarbeitet, muss einen gültiger Pinsel-Handle für den Hintergrund im Dialogfeld zurückgegeben. Im Allgemeinen wenn HandleMessage jede Nachricht WM_CTLCOLOR * verarbeitet, muss einen gültiger Pinsel-Handle für den Hintergrund des angegebenen Steuerelements zurückgeben.

Rufen Sie nicht die EndDialog -Funktion von der HandleMessage -Methode. Stattdessen können HandleMessage die PostMessage -Funktion eine WM_COMMAND -Meldung mit der IDABORT-Wert, der die Dialogfeldprozedur Post aufrufen. IDABORT schließt das Eigenschaftenblatt Drucken und bewirkt, dass PrintDlgEx PD_RESULT_CANCEL in der DwResultAction -Member der PRINTDLGEX -Struktur zurück. Wenn Sie müssen wissen, warum HandleMessage das Dialogfeld geschlossen, müssen Sie Ihre eigenen Kommunikationsmechanismus zwischen der HandleMessage -Methode und Ihrer Anwendung bereitstellen.

Sie können eine Unterklasse die standardmäßigen Steuerelementen des Dialogfeldes Kind im unteren Teil der Seite Allgemein im Feld. Diese Standardsteuerelemente sind ähnlich denen im Dialogfeld " Drucken ". Allerdings kann die Standard-Dialogfeldprozedur auch Unterklasse der Steuerelemente. Aus diesem Grund sollten Sie Unterklasse Steuerelemente, wenn HandleMessage die WM_INITDIALOG -Meldung verarbeitet. Dies stellt sicher, dass Ihre Unterklasse-Prozedur Steuerelement-spezifische Nachrichten vor der Unterklasse-Prozedur festlegen, indem das Dialogfeld im Feld Prozedur empfängt.

QuickInfo

&Nbsp; Windows NT: Version 5.0 oder höher erforderlich.
Windows:Nicht unterstützt.
Windows CE:Nicht unterstützt.
Header:In commdlg.h deklariert.

Siehe auch

Übersicht über Common Dialog Box Library, IPrintDialogCallback, EndDialog PostMessage, PrintDlgEx, PRINTDLGEX, SetWindowLong, WM_COMMAND, WM_CTLCOLORDLG, WM_INITDIALOG, WM_NOTIFY

Index