CPageSetupDialog::CPageSetupDialog
만들려면이 함수를 호출 하는 CPageSetupDialog 개체입니다.
CPageSetupDialog(
DWORD dwFlags = PSD_MARGINS | PSD_INWININIINTLMEASURE,
CWnd* pParentWnd = NULL
);
매개 변수
dwFlags
하나 이상의 플래그를 설정 대화 상자를 사용자 지정할 수 있습니다. 값은 비트 OR 연산자를 사용 하 여 결합할 수 있습니다. 이러한 값의 의미는 다음과 같습니다.PSD_DEFAULTMINMARGINS 프린터의 최소 수를 페이지 여백에 대 한 허용 가능한 최소 너비를 설정 합니다. 경우이 플래그는 무시 됩니다는 PSD_MARGINS 및 PSD_MINMARGINS 플래그가 지정 됩니다.
PSD_INWININIINTLMEASURE 구현 되지 않았습니다.
PSD_MINMARGINS 시스템이 지정 된 값을 사용 하 여 rtMinMargin 왼쪽, 위쪽, 오른쪽 및 아래쪽 여백에 대 한 허용 가능한 최소 너비 멤버로. 시스템 사용자를 지정 된 최소값 보다 작은 너비를 입력 수 없습니다. 경우 PSD_MINMARGINS 지정 하지 않으면 시스템 프린터에서 허용 하는 허용 되는 최소 너비를 설정 합니다.
PSD_MARGINS 여백 컨트롤 영역을 활성화 합니다.
PSD_INTHOUSANDTHSOFINCHES 대화 상자의 단위 인치의 1/1000로 측정 됩니다.
PSD_INHUNDREDTHSOFMILLIMETERS 밀리미터의 1/100에서 측정 단위 대화 상자를 발생 합니다.
PSD_DISABLEMARGINS 여백 대화 상자 컨트롤을 사용할 수 없습니다.
PSD_DISABLEPRINTER 프린터 단추를 사용할 수 없습니다.
PSD_NOWARNING 경고 메시지는 기본 프린터가 없는 경우 표시 되지 않습니다.
PSD_DISABLEORIENTATION 페이지 방향 대화 상자 컨트롤을 사용할 수 없습니다.
PSD_RETURNDEFAULT 로 인해 CPageSetupDialog 반환 합니다 DEVMODE 및 DEVNAMES 대화 상자를 표시 하지 않고 시스템 기본 프린터를 초기화 하는 구조. 이 두 가정 hDevNames 및 hDevMode 는 NULL. 그렇지 않으면 함수에서 오류가 반환 됩니다. 시스템 기본 프린터는 이전 프린터 드라이버에 의해 (Windows 버전 3.0 보다 이전) 지만 hDevNames 가 반환 됩니다. hDevMode 는 NULL.
PSD_DISABLEPAPER 의 용지 선택 컨트롤을 사용 하지 않습니다.
PSD_SHOWHELP 대화 상자에서 도움말 단추를 표시 합니다. HwndOwner 구성원 이어야 NULL 이 플래그를 지정 하면 됩니다.
PSD_ENABLEPAGESETUPHOOK 후크 함수에 지정 된 수 lpfnSetupHook.
PSD_ENABLEPAGESETUPTEMPLATE 인해 운영 체제 식별 서식 파일 대화 상자를 사용 하 여 대화 상자를 만들려면 hInstance 및 lpSetupTemplateName.
PSD_ENABLEPAGESETUPTEMPLATEHANDLE 는 hInstance 미리 로드 된 대화 상자 템플릿을 포함 하는 데이터 블록을 식별 합니다. 시스템 무시 lpSetupTemplateName 이 플래그를 지정 하면 됩니다.
PSD_ENABLEPAGEPAINTHOOK 후크 함수에 지정 된 수 lpfnPagePaintHook.
PSD_DISABLEPAGEPAINTING 그리기 영역 사용할 수 없습니다.
pParentWnd
대화 상자의 부모 또는 소유자에 대 한 포인터입니다.
설명
사용 된 DoModal 함수는 대화 상자를 표시 합니다.
예제
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());
}
}
요구 사항
헤더: afxdlgs.h