CPageSetupDialog::CPageSetupDialog
Rufen Sie diese Funktion auf, um ein CPageSetupDialog-Objekt zu erstellen.
CPageSetupDialog(
DWORD dwFlags = PSD_MARGINS | PSD_INWININIINTLMEASURE,
CWnd* pParentWnd = NULL
);
Parameter
dwFlags
Eine oder mehrere Flags, die Sie verwenden können, um die Einstellungen des Dialogfelds anzupassen. Die Werte können mithilfe des OR-Operators bitweisen kombiniert werden. Diese Werte haben folgende Bedeutung:PSD_DEFAULTMINMARGINS legt die minimalen zulässigen Breite fest, damit die Seitenrände dasselbe wie die Minima des Druckers sind. Dieses Flag wird ignoriert, wenn die PSD_MARGINS und PSD_MINMARGINS-Flags ebenfalls angegeben werden.
PSD_INWININIINTLMEASURE nicht implementiert.
PSD_MINMARGINS wird das System, die Werte zu verwenden, die im rtMinMargin-Member angegeben werden, während die minimalen zulässigen Breite für den linken, oberen, rechten und unteren Rand. Das System verhindert der Benutzer ungültige einer Breite, die kleiner ist, als das angegebene Mindestregeln. Wenn PSD_MINMARGINS nicht angegeben wird, legt das System die minimalen zulässigen Breite auf die fest, die vom Drucker zugelassen werden.
PSD_MARGINS ermöglicht den Randsteuerelementbereich.
PSD_INTHOUSANDTHSOFINCHES wird die Einheiten des Dialogfelds, in 1/1000 Zoll gemessen werden.
PSD_INHUNDREDTHSOFMILLIMETERS wird die Einheiten des Dialogfelds, in 1/100 eines Millimeters gemessen werden.
PSD_DISABLEMARGINS deaktiviert die Randdialogfeld-steuerelemente.
PSD_DISABLEPRINTER deaktiviert die Druckerschaltfläche.
PSD_NOWARNING verhindert die Warnmeldung an angezeigt werden, wenn es keinen Standarddrucker gibt.
PSD_DISABLEORIENTATION deaktiviert das Seitenausrichtungsdialogfeldsteuerelement.
PSD_RETURNDEFAULT bewirkt CPageSetupDialog, DEVMODE und DEVNAMES-Strukturen zurückzugeben, die für den Systemstandarddrucker initialisiert werden, ohne ein Dialogfeld anzuzeigen. Es wird davon ausgegangen, dass hDevNames und hDevModeNULL sind; andernfalls gibt die Funktion einen Fehler zurück. Wenn der Systemstandarddrucker durch einen alten Druckertreiber (früher als 3,0 Windows-Version) unterstützt wird, nur hDevNames zurückgegeben wird, hDevMode ist NULL.
PSD_DISABLEPAPER deaktiviert das Papier-Auswahlsteuerelement.
PSD_SHOWHELP wird das Dialogfeld, die Hilfeschaltfläche anzuzeigen. Der hwndOwner-Member darf nicht NULL sein, wenn dieses Flag angegeben ist.
PSD_ENABLEPAGESETUPHOOK aktiviert die Hookfunktion, die in lpfnSetupHook angegeben wird.
PSD_ENABLEPAGESETUPTEMPLATE wird das Betriebssystem, das Dialogfeld erstellen, indem Sie das Dialogfeldvorlagenfeld verwendet, das von hInstance und lpSetupTemplateName identifiziert wird.
PSD_ENABLEPAGESETUPTEMPLATEHANDLE gibt an, dass hInstance einen Datenblock identifiziert, der eine vorab geladene Dialogfeldvorlage enthält. Das System ignoriert lpSetupTemplateName, wenn dieses Flag angegeben ist.
PSD_ENABLEPAGEPAINTHOOK aktiviert die Hookfunktion, die in lpfnPagePaintHook angegeben wird.
PSD_DISABLEPAGEPAINTING deaktiviert das Einzugsgebiet des Dialogfelds.
pParentWnd
Zeiger auf dem übergeordneten oder zum Besitzer Dialogfelds.
Hinweise
Verwenden Sie die DoModal-Funktion, um das Dialogfeld anzuzeigen.
Beispiel
void CMyRichEditView::OnPageSetupDlg()
{
CPageSetupDialog psd(PSD_INTHOUSANDTHSOFINCHES | PSD_MARGINS |
PSD_ENABLEPAGEPAINTHOOK, this);
// Initialize margins
psd.m_psd.rtMargin.top = 1000;
psd.m_psd.rtMargin.left = 1250;
psd.m_psd.rtMargin.right = 1250;
psd.m_psd.rtMargin.bottom = 1000;
psd.m_psd.lpfnPagePaintHook = (LPPAGEPAINTHOOK)PaintHook;
if(IDOK == psd.DoModal())
{
// Propagate changes to the app
AfxGetApp()->SelectPrinter(psd.m_psd.hDevNames, psd.m_psd.hDevMode);
}
else
{
TRACE(_T("CommDlgExtendedError returned error %d from ")
_T("CPageSetupDialog::DoModal().\n"),
(int)CommDlgExtendedError());
}
}
Anforderungen
Header: afxdlgs.h