PRINTDLG

PRINTDLG 구조에 PrintDlg 함수를 사용 하 여 인쇄 대화 상자를 초기화 하는 정보가 들어 있습니다. 사용자 대화 상자를 닫고, 시스템이이 구조를 사용 하 여 사용자의 선택에 대 한 정보를 반환.

typedef struct tagPD {/ / pd DWORD lStructSize; 
    HWND hwndOwner; 
    처리 hDevMode; 
    처리 hDevNames; 
    HDC hDC; 
    DWORD 플래그; 
    WORD nFromPage; 
    WORD nToPage; 
    WORD nMinPage; 
    WORD nMaxPage; 
    WORD nCopies; 
    HINSTANCE hInstance; 
    DWORD lCustData; 
    LPPRINTHOOKPROC lpfnPrintHook; 
    LPSETUPHOOKPROC lpfnSetupHook; 
    LPCTSTR lpPrintTemplateName; 
    LPCTSTR lpSetupTemplateName; 
    HPrintTemplate; 처리 
    HSetupTemplate; 처리 
} PRINTDLG 
 

회원

lStructSize
바이트에서 구조 크기를 지정합니다.
hwndOwner
대화 상자를 소유 하 고 있는 창을 식별 합니다. 이 멤버는 모든 유효한 창 핸들 수 또는 대화 상자에 없는 소유자 경우 NULL이 될 수 있다.
hDevMode
포함 하는 이동식 전역 메모리 개체에 대 한 핸들을 DEVMODE 구조. HDevMode 입력에 NULL이 아니면 DEVMODE 구조체에 대 한 이동식 메모리 블록을 할당 하 고 해당 멤버를 초기화 해야 합니다. PrintDlg 함수 대화 상자에 컨트롤 입력된 datato 초기화를 사용합니다. PrintDlg 반환 될 때 DEVMODE 구성원 사용자의 입력을 나타냅니다.

HDevMode NULL 이면 입력에 PrintDlg DEVMODE 구조체에 대 한 메모리를 할당, 사용자의 입력을 나타내는 해당 멤버를 초기화 및 그것을 식별 하는 핸들을 반환 합니다.

지정 된 프린터의 장치 드라이버 확장된 장치 모드를 지원 하지 않는 경우 hDevMode 은 NULL PrintDlg 반환 될 때.

경우 장치 이름 (의 dmDeviceName 멤버에 의해 지정 된는 DEVMODE 구조) 승리 [장치] 섹션에 표시 되지 않습니다.INI, PrintDlg 오류를 반환 합니다.

HDevModehDevNames 멤버에 대 한 자세한 내용은이 항목의 끝에 설명 단원을 참조 하십시오.

hDevNames
DEVNAMES 구조체를 포함 하는 이동식 전역 메모리 개체에 대 한 핸들. HDevNames 입력에 NULL이 아니면 DEVNAMES 구조에 대 한 이동식 메모리 블록을 할당 하 고 해당 멤버를 초기화 해야 합니다. PrintDlg 함수 대화 상자에 컨트롤 입력된 datato 초기화를 사용합니다. PrintDlg 반환 될 때 DEVNAMES 회원은 사용자가 선택한 프린터에 대 한 정보를 포함 합니다. 이 정보를 사용 하 여 장치 컨텍스트 또는 정보 컨텍스트를 만들 수 있습니다.

HDevNames 멤버는 NULL이 될 수 있습니다,이 경우 PrintDlg DEVNAMES 구조체를 초기화 하 여 사용자 지정을 해당 멤버의 입력에 대 한 메모리 할당 및 핸들을 반환 하는 식별.

HDevModehDevNames 멤버에 대 한 자세한 내용은이 항목의 끝에 설명 단원을 참조 하십시오.

hDC
장치 컨텍스트 또는 플래그 멤버 PD_RETURNDC 또는 PC_RETURNIC 플래그를 지정 하는 여부에 따라 정보 컨텍스트를 식별 합니다. 어느 플래그를 지정 하는 경우이 멤버의 값을 정의 되지 않습니다. PD_RETURNDC 우선 순위는 모두 플래그를 지정 하는 경우.
플래그
인쇄 공용 대화 상자를 초기화 하는 데 사용할 수 있는 비트 플래그 집합입니다. 대화 상자 반환 될 때 사용자의 입력을 나타내는 데 이러한 플래그를 설정 합니다. 이 구성원은 다음 플래그 조합 될 수 있습니다.:
PD_ALLPAGES
모든 라디오 단추 선택 처음 나타내는 기본 플래그입니다. 이 플래그를 PD_PAGENUMS 및 PD_SELECTION 플래그를 지정 하지는 않으려면 개체 틀으로 사용.
PD_COLLATE
한 부씩 인쇄 확인란의 선택이 플래그를 설정 하는 경우.

PrintDlg 함수가 반환 될 때이 플래그가 설정 되 면 응용 프로그램 여러 복사본의 데이터 정렬이 시뮬레이션 해야 합니다. 자세한 내용은 다음 웹 사이트를 참조 하십시오. PD_USEDEVMODECOPIESANDCOLLATE 플래그에 대 한 설명을.

PD_DISABLEPRINTTOFILE
파일로 인쇄 확인란을 해제합니다.
PD_ENABLEPRINTHOOK
LpfnPrintHook 구성원에 지정 된 후크 프로시저를 수 있습니다. 이렇게 하면 인쇄 대화 상자 후크 프로시저.
PD_ENABLEPRINTTEMPLATE
HInstancelpPrintTemplateName 멤버 지정 기본 인쇄 대화 상자 서식 파일에 대 한 대체를 나타냅니다.
PD_ENABLEPRINTTEMPLATEHANDLE
HPrintTemplate 회원 식별 로드 대화 상자 템플릿을 포함 하는 데이터 블록을 나타냅니다. 이 서식 파일 인쇄 대화 상자에 대 한 기본 서식 파일을 대체합니다. 이 플래그를 지정 하는 경우 lpPrintTemplateName 멤버를 무시 하는 시스템.
PD_ENABLESETUPHOOK
LpfnSetupHook 구성원에 지정 된 후크 프로시저를 수 있습니다. 이렇게 하면 인쇄 설정 대화 상자 후크 프로시저.
PD_ENABLESETUPTEMPLATE
HInstancelpSetupTemplateName 멤버 지정 기본 인쇄설정 대화 상자의 서식 파일에 대 한 대체를 나타냅니다. .
PD_ENABLESETUPTEMPLATEHANDLE
HSetupTemplate 회원 식별 로드 대화 상자 템플릿을 포함 하는 데이터 블록을 나타냅니다. 이 서식 파일 인쇄 설정 대화 상자에 대 한 기본 서식 파일을 대체합니다. 이 플래그를 지정 하는 경우 lpSetupTemplateName 멤버를 무시 하는 시스템.
PD_HIDEPRINTTOFILE
파일로 인쇄 확인란을 숨깁니다.
PD_NONETWORKBUTTON
이 숨겨지고 네트워크 단추 비활성화.
PD_NOPAGENUMS
페이지 라디오 단추와 관련 된 편집 컨트롤을 사용 하지 않도록 설정.
PD_NOSELECTION
선택 라디오 단추 비활성화.
PD_NOWARNING
기본 프린터가 없는 경우 표시 되는 경고 메시지 방지.
PD_PAGENUMS
이 플래그가 설정 되어 있으면 페이지 라디오 단추가 선택 되어.

시작 및 끝 페이지는 사용자가 지정한 nFromPagenFromPage 멤버를 나타내는 PrintDlg 함수가 반환 될 때이 플래그가 설정 되 면.

PD_PRINTSETUP
인쇄 대화 상자 보다는 인쇄 설정 대화 상자를 표시 하려면 시스템으로 인해.
PD_PRINTTOFILE
파일로 인쇄 확인란을 선택이 플래그를 설정 하는 경우.

DEVNAMES 구조체의 wOutputOffset 멤버를 나타내는 오프셋 문자열이 포함 PrintDlg 함수가 반환 될 때이 플래그가 설정 되어 있으면 "파일:". 호출 하는 경우는 인쇄 작업을 시작 하려면 StartDoc 함수 지정이 "파일:" 문자열의 lpszOutput 멤버에는 DOCINFO 구조체. 이 문자열을 지정 하면 출력 파일의 이름에 대 한 사용자 쿼리를 인쇄 하위 시스템.

PD_RETURNDC
PrintDlg 선택 합니다 일치 하는 장치 컨텍스트를 반환 하려면 대화 상자에서 사용자를 발생 합니다. 디바이스 컨텍스트 hDC 에 반환.
PD_RETURNDEFAULT
이 플래그가 설정 되어 있으면 PrintDlg 함수에는 대화 상자가 표시 되지 않습니다. 그것은 핸들을 hDevNameshDevMode 멤버를 설정 하는 대신, 시스템의 기본 프린터에 대 한 초기화 된 DEVMODEDEVNAMES 구조. HDevNameshDevMode NULL 이어야 또는 PrintDlg 오류를 반환 합니다.

시스템 기본 프린터 (Windows 버전 3.0 이전)는 오래 된 프린터 드라이버에 의해 지원만 hDevNames 반환 됩니다; hDevMode 은 NULL입니다.

PD_RETURNIC
이 플래그는 장치 컨텍스트에 보다는 정보 컨텍스트를 반환 합니다. 제외 하 고 PD_RETURNDC 플래그를 유사 합니다. HDC 출력에 정의 되지 않은 PD_RETURNDC도 PD_RETURNIC를 지정 하는 경우.
PD_SELECTION
이 플래그가 설정 되 면 선택 라디오 단추 선택.

모든 라디오 단추가 선택 PD_PAGENUMS도 PD_SELECTION을 설정 하는 경우.

PD_SHOWHELP
도움말 단추를 표시 하려면 대화 상자를 발생 합니다. HwndOwner 구성원 HELPMSGSTRING 을 받을 수 있는 창을 등록 대화 상자에서 도움말 단추를 클릭할 때 보내는 메시지를 지정 해야 합니다.
PD_USEDEVMODECOPIES
PD_USEDEVMODECOPIESANDCOLLATE와 같은
PD_USEDEVMODECOPIESANDCOLLATE
이 플래그는 응용 프로그램 여러 복사본 및 데이터 정렬을 지원 하는지 여부를 나타냅니다. 응용 프로그램 여러 복사본 및 데이터 정렬을 지원 하지 않습니다 나타내는 입력에이 플래그를 설정 합니다. 이 경우 PRINTDLG 구조체의 nCopies 멤버는 항상 1을 반환 합니다 및 PD_COLLATE 플래그 구성원에서 설정 되지 않습니다.

이 플래그가 설정 되어 있지 않으면 응용 프로그램은 인쇄 하 고 여러 개의 복사본을 정렬 하는 작업을 담당 합니다. 이 경우 PRINTDLG 구조체의 nCopies 멤버는 사용자가 인쇄 매수를 나타냅니다 및 플래그 구성원에서 PD_COLLATE 플래그는 사용자가 데이터 정렬 여부를 나타냅니다.

이 플래그가 설정 되어 있는지 여부에 관계 없이 응용 프로그램을 렌더링 얼마나 많은 복사본 nCopies 및 PD_COLLATE에서 확인할 수 있습니다 그리고 여부 그들을 인쇄합니다 하려면 한 부씩 인쇄.

이 플래그를 설정 하는 경우 프린터 드라이버는 여러 복사본을 지원 하지 않습니다 복사본 편집 컨트롤은 사용할 수 없습니다. 마찬가지로,이 플래그를 설정 하는 경우 프린터 드라이버는 데이터 정렬을 지원 하지 않습니다 Collate 확인란이 비활성화 되어.

DmCopiesdmCollate 멤버는 DEVMODE 구조는 복사본을 포함 하 고 프린터 드라이버에 의해 사용 되는 정보를 한 부씩 인쇄 합니다. 이 플래그를 설정 하는 경우 프린터 드라이버는 여러 복사본을 지원 dmCopies 멤버는 사용자가 요청한 매수를 나타냅니다. 이 플래그를 설정 하는 경우 프린터 드라이버에서 지 원하는 데이터 정렬을 DEVMODE 구조체의 dmCollate 멤버는 사용자가 정렬 여부를 나타냅니다. 이 플래그가 설정 되어 있지 않으면 dmCopies 구성원은 항상 1을 반환 합니다 및 dmCollate 구성원은 항상 0입니다.


nFromPage
시작 페이지 편집 컨트롤에 대 한 초기 값을 지정합니다.

PrintDlg 반환 될 때 nFromPage 는 사용자가 지정 된 시작 페이지입니다. 사용자가 최대 페이지 범위에 최소 내 시작 페이지 값을 입력 확인 버튼, PrintDlg 세트는 PD_PAGENUMS 플래그를 때까지 반환 하지 않습니다를 클릭할 때 페이지 라디오 단추를 선택 하는 경우.

Windows 95: PrintDlg 오류를 반환 합니다 nFromPage 또는 nToPage 에 대 한 입력된 값 nMinPagenMaxPage에 의해 지정 된 범위 밖에 있는 경우.

Windows NT: NFromPage 또는 nToPage 에 대 한 값을 입력 하는 경우는 최소/최대 범위 PrintDlg 반환 오류 PD_PAGENUMS 플래그를 지정 하는 경우에 그렇지 않으면, 그것은 대화 상자를 표시 하지만 최소 또는 최대 값 범위를 벗어난 값으로 변경.

nToPage
끝 페이지 편집 컨트롤에 대 한 초기 값을 지정합니다.

PrintDlg 반환 될 때 nToPage 는 사용자가 지정한 끝 페이지입니다. 사용자가 최소 최대 페이지 범위 내에 있는 끝 페이지 값을 입력 사용 클릭 좋아 버튼, PrintDlg 세트는 PD_PAGENUMS 플래그를 때까지 반환 하지 않습니다 때 페이지 라디오 단추를 선택 하는 경우.

nMinPage
페이지 편집 컨트롤에 지정 된 페이지 범위에 대 한 최소 값을 지정 합니다. 페이지 라디오 버튼 및 시작 및 끝 페이지 편집 컨트롤 비활성화 이면 nMinPage nMaxPage,.
nMaxPage
지정 페이지 편집 컨트롤에 지정 된 페이지 범위에 대 한 최대 값.
nCopies
복사본 편집 컨트롤에 대 한 복사본의 초기 번호를 포함 하는 경우 hDevMode NULL; 그렇지 않으면,의 dmCopies 멤버는 DEVMODE 구조 초기 값을 포함 합니다. PrintDlg 반환 될 때 nCopies 인쇄 복사본의 실제 수를 포함 합니다. 이 값에 따라 달라 집니다 여부 응용 프로그램 또는 프린터 드라이버 여러 복사본을 인쇄 하는 작업을 담당 합니다. 플래그 멤버에 PD_USEDEVMODECOPIESANDCOLLATE 플래그가 설정 되어 nCopies 는 항상 반환 1 및 프린터 드라이버는 여러 복사본을 인쇄 하는 작업을 담당 합니다. 플래그가 설정 되어 있지 않으면 응용 프로그램은 nCopies에 의해 지정 된 복사본 수를 인쇄 하는 작업을 담당 합니다. 자세한 내용은 다음 웹 사이트를 참조 하십시오. PD_USEDEVMODECOPIESANDCOLLATE 플래그에 대 한 설명을.
hInstance
HInstance 응용 프로그램 또는 lpPrintTemplateName 또는 lpSetupTemplateName 멤버에 의해 명명 된 대화 상자 템플릿을 포함 하는 모듈 인스턴스 핸들은 PD_ENABLEPRINTTEMPLATE 또는 PD_ENABLESETUPTEMPLATE 플래그 플래그 멤버에 설정 하는 경우.
lCustData
시스템 lpfnPrintHook 또는 lpfnSetupHook 멤버에 의해 식별 된 후크 프로시저에 전달 하는 응용 프로그램 정의 데이터를 지정 합니다. 시스템 후크 프로시저를 WM_INITDIALOG 메시지를 보내면, 메시지의 lParam 매개 변수 PRINTDLG 구조를 가리키는 포인터 지정 대화 상자를 만들 때입니다. 후크 프로시저가이 포인터를 사용 하 여 lCustData 값을 가져올 수 있습니다.
lpfnPrintHook
PrintHookProc 에 대 한 포인터는 인쇄 대화 상자를 위한 메시지를 처리할 수 있는 절차를 연결 합니다. 이 멤버는 PD_ENABLEPRINTHOOK 플래그 플래그 멤버에 설정 되어 있지 않으면 무시 됩니다.
lpfnSetupHook
SetupHookProc 에 대 한 포인터는 인쇄 설정 대화 상자를 위한 메시지를 처리할 수 있는 절차를 연결 합니다. 이 멤버는 PD_ENABLESETUPHOOK 플래그 플래그 멤버에 설정 되어 있지 않으면 무시 됩니다.
lpPrintTemplateName
HInstance 회원에 의해 식별 된 모듈에서 대화 상자 템플릿 리소스 이름을 null로 끝나는 문자열 포인터입니다. 이 서식 파일에는 기본 인쇄 대화 상자 템플릿을 대체합니다. 이 멤버는 PD_ENABLEPRINTTEMPLATE 플래그 플래그 멤버에 설정 되어 있지 않으면 무시 됩니다.
lpSetupTemplateName
HInstance 회원에 의해 식별 된 모듈에서 대화 상자 템플릿 리소스 이름을 null로 끝나는 문자열 포인터입니다. 이 서식 파일에는 기본 인쇄 설정 대화 상자 템플릿을 대체합니다. 이 멤버는 PD_ENABLESETUPTEMPLATE 플래그 플래그 멤버에 설정 되어 있지 않으면 무시 됩니다.
hPrintTemplate
플래그 멤버에 PD_ENABLEPRINTTEMPLATEHANDLE 플래그가 설정 되어 있으면 hPrintTemplate 대화 상자 템플릿에 포함 된 메모리 개체의 핸들입니다. 이 서식 파일을 기본 인쇄 대화 상자 템플릿 대체.
hSetupTemplate
플래그 멤버에 PD_ENABLESETUPTEMPLATEHANDLE 플래그가 설정 되어 있으면 hSetupTemplate 대화 상자 템플릿에 포함 된 메모리 개체의 핸들입니다. 이 서식 파일을 기본 인쇄 설정 대화 상자 템플릿 대체.

주의

동일의 dmDeviceName 멤버는 호출할 때 PrintDlg 함수 해야 DEVNAMES 구조체의 wDeviceOffset 멤버는 DEVMODE 구조. 이러한 멤버는 동일한 프린터를 지정 하지 않으면, PrintDlg wDeviceOffset 구성원에 의해 지정 된 프린터를 사용 하 여 대화 상자 초기화.

일반적으로, hDevModehDevNames NULL 경우 PrintDlg 현재 기본 프린터를 사용 하 여 대화 상자를 초기화 합니다. 그러나 PD_RETURNDEFAULT 플래그가 설정 하는 경우 hDevModehDevNames 는 NULL PrintDlg hDevNameshDevMode 멤버를 사용 하 여 대화 상자를 표시 하지 않고 현재 기본 프린터에 대 한 정보를 반환.

QuickInfo

nbsp;?Windows &NT: 버전 3.1 이상이 필요 합니다.
Windows:Windows 95 이상이 필요합니다.
Windows CE:버전 1.0 이상이 필요합니다.
헤더:Winspool.h에 선언 합니다.
유니코드:유니코드와 ANSI 구조 정의.

참고 항목

공용 대화 상자 라이브러리 개요, 일반 대화 상자 구조, CreateDC, CreateIC, PrintDlg, DEVMODE, DEVNAMES, WM_INITDIALOG

 

Index