PRINTDLG -strukturen inneholder informasjon som PrintDlg -funksjonen til å initialisere i dialogboksen Skriv ut . Når brukeren lukker dialogboksen, bruker systemet denne strukturen vil returnere informasjon om brukerens valg.
typeDef struct tagPD {/ / pd DWORD lStructSize;
HWND hwndOwner;
HÅNDTERE hDevMode;
HÅNDTERE hDevNames;
HDC hDC;
DWORD Flagg;
WORD nFromPage;
WORD nToPage;
WORD nMinPage;
WORD nMaxPage;
WORD nCopies;
HINSTANCE hInstance;
DWORD lCustData;
LPPRINTHOOKPROC lpfnPrintHook;
LPSETUPHOOKPROC lpfnSetupHook;
LPCTSTR lpPrintTemplateName;
LPCTSTR lpSetupTemplateName;
HÅNDTERE hPrintTemplate;
HÅNDTERE hSetupTemplate;
} PRINTDLG
Hvis hDevMode er NULL på innspill, PrintDlg tildeler minne for den definerte strukturen DEVMODE , initialiserer sine medlemmer å angi brukerens inndata, og returnerer et håndtak som identifiserer det.
Hvis enhetsdriveren for den angitte skriveren ikke støtter utvidede enheten modi, er hDevMode NULL når PrintDlg returnerer.
Hvis enhetsnavnet (angitt av dmDeviceName -medlemmet av den strukturen DEVMODE ) vises ikke i delen [devices] i seier.INI, PrintDlg returnerer en feil.
Hvis du vil ha mer informasjon om hDevMode og hDevNames -medlemmer, kan du se delen Merknader på slutten av dette emnet.
HDevNames -medlem kan være NULL, i så fall, PrintDlg tildeler minne for DEVNAMES strukturen, initializes som sine medlemmer å angi brukeren er inndata, og returnerer en håndtak som identifiserer det.
Hvis du vil ha mer informasjon om hDevMode og hDevNames -medlemmer, kan du se delen Merknader på slutten av dette emnet.
PD_ALLPAGES | |
Standardflagg som angir at alle alternativknappen velges først. Dette flagget brukes som en plassholder for å angi at flaggene PD_PAGENUMS og PD_SELECTION ikke er angitt. | |
PD_COLLATE | |
Hvis dette flagget er angitt, er merket av for avmerkingsboksen Kollater. Hvis dette flagget er angitt når funksjonen PrintDlg returnerer, må programmet simulere måltidet av flere kopier. Hvis du vil ha mer informasjon, kan du se beskrivelsen av PD_USEDEVMODECOPIESANDCOLLATE-flagg. |
|
PD_DISABLEPRINTTOFILE | |
Deaktiverer avmerkingsboksen Skriv til fil. | |
PD_ENABLEPRINTHOOK | |
Aktiverer hook-prosedyre som er angitt i lpfnPrintHook -medlem. Dette gjør at Bindingsprosedyren for dialogboksen Skriv ut. | |
PD_ENABLEPRINTTEMPLATE | |
Angir at hInstance og lpPrintTemplateName -medlemmer angir en erstatning for Skriv ut dialogboksen boksen standardmalen. | |
PD_ENABLEPRINTTEMPLATEHANDLE | |
Angir at medlemmet hPrintTemplate identifiserer en datablokk som inneholder en mal for forhåndslagrede dialogboksen-boksen. Denne malen erstatter standardmalen for dialogboksen Skriv ut . Systemet ignorerer medlemmet lpPrintTemplateName Hvis dette flagget er angitt. | |
PD_ENABLESETUPHOOK | |
Aktiverer hook-prosedyre som er angitt i lpfnSetupHook -medlem. Dette gjør at Bindingsprosedyren for dialogboksen Skriveroppsett. | |
PD_ENABLESETUPTEMPLATE | |
Angir at hInstance og lpSetupTemplateName -medlemmer angir en erstatning for Print installasjonsprogrammet dialogboksen boksen standardmalen. | |
PD_ENABLESETUPTEMPLATEHANDLE | |
Angir at medlemmet hSetupTemplate identifiserer en datablokk som inneholder en mal for forhåndslagrede dialogboksen-boksen. Denne malen erstatter standardmalen for i dialogboksen Skriveroppsett . Systemet ignorerer medlemmet lpSetupTemplateName Hvis dette flagget er angitt. | |
PD_HIDEPRINTTOFILE | |
Skjuler merket for Skriv til fil. | |
PD_NONETWORKBUTTON | |
Skjuler og deaktiverer knappen nettverk. | |
PD_NOPAGENUMS | |
Deaktiverer alternativknappen sider og tilknyttede redigeringskontrollene. | |
PD_NOSELECTION | |
Deaktiverer alternativknappen utvalg. | |
PD_NOWARNING | |
Hindrer at advarselen vises når det er no default printer. | |
PD_PAGENUMS | |
Hvis dette flagget er angitt, er alternativknappen sider valgt. Hvis dette flagget er angitt når funksjonen PrintDlg returnerer, angir nFromPage og nFromPage medlemmer start- og Sluttsiden som er angitt av brukeren. |
|
PD_PRINTSETUP | |
Systemet å vise dialogboksen Skriv ut i stedet for dialogboksen Skriv ut. | |
PD_PRINTTOFILE | |
Hvis dette flagget er angitt, er det merket av for alternativet Skriv til fil. Hvis dette flagget er angitt når funksjonen PrintDlg returnerer, forskyvningen som er angitt av wOutputOffset -medlemmet av DEVNAMES strukturen inneholder strengen "fil:". Når du kaller den StartDoc -funksjonen til å starte utskrift operasjonen, angir dette "fil:" streng i lpszOutput medlem av den DOCINFO struktur. Å angi denne strengen forårsaker Skriverdelsystemet å spørre brukeren etter navnet på utdatafilen. |
|
PD_RETURNDC | |
Fører til PrintDlg til å returnere en enhetskontekst som samsvarer med valgene brukeren gjorde i dialogboksen. Enheten sammenheng returneres i hDC. | |
PD_RETURNDEFAULT | |
Hvis dette flagget er angitt, vises ikke funksjonen PrintDlg i dialogboksen. I stedet, det setter hDevNames og hDevMode medlemmene til referanser til DEVMODE og DEVNAMES strukturer som er initialisert for standardskriveren for systemet. Både hDevNames og hDevMode må være NULL eller PrintDlg returnerer en feil. Hvis den standard systemskriveren støttes av en gammel skriverdriver (tidligere enn Windows versjon 3.0), returneres bare hDevNames ; hDevMode er NULL. |
|
PD_RETURNIC | |
Analog med PD_RETURNDC-flagg, bortsett fra dette flagget returnerer en kontekst for informasjon i stedet for en enhetskontekst. Hvis verken PD_RETURNDC eller PD_RETURNIC er angitt, hDC er ikke definert for utdata. | |
PD_SELECTION | |
Hvis dette flagget er angitt, er alternativknappen utvalg valgt. Hvis verken PD_PAGENUMS eller PD_SELECTION er angitt, er alle alternativknappen valgt. |
|
PD_SHOWHELP | |
Fører til dialogboksen for å vise Hjelp -knappen. HwndOwner -medlem må angi i vinduet for å motta HELPMSGSTRING registrert meldinger som dialogboksen sender når brukeren klikker Hjelp -knappen. | |
PD_USEDEVMODECOPIES | |
Samme som PD_USEDEVMODECOPIESANDCOLLATE | |
PD_USEDEVMODECOPIESANDCOLLATE | |
Dette flagget angir om programmet støtter flere kopier og måltidet. Angi dette flagget på inndata for å angi at programmet ikke støtter flere kopier og måltidet. I dette tilfellet returnerer nCopies medlem av PRINTDLG -strukturen alltid 1, og PD_COLLATE er aldri satt i flagg -medlem. Hvis dette flagget ikke er angitt, er programmet som er ansvarlig for utskrift og samordning av flere kopier. I dette tilfellet nCopies medlem av PRINTDLG -strukturen angir antall eksemplarer brukeren ønsker å skrive ut, og PD_COLLATE-flagget i medlemmet flagg angir om brukeren ønsker sammenlikning. Et program kan finne ut fra nCopies og PD_COLLATE hvor mange eksemplarer du vil gjengi uansett om dette flagget er angitt, og om du vil skrive dem ut Kollatert. Hvis dette flagget er angitt, og skriverdriveren støtter ikke flere kopier, er Kopier redigeringskontrollen deaktivert. På samme måte, hvis dette flagget er angitt, og skriverdriveren støtter ikke sortering, avkrysningsruten Sorter er deaktivert. DmCopies og dmCollate medlemmer av den strukturen DEVMODE inneholder kopiene og kollatere informasjon som brukes av skriverdriveren. Hvis dette flagget er angitt, og skriverdriveren støtter flere kopier, angir medlemmet dmCopies hvor mange kopier som er forespurt av brukeren. Hvis dette flagget er angitt, og skriverdriveren støtter sortering, angir dmCollate -medlem på strukturen DEVMODE om brukeren ønsker sammenlikning. Hvis dette flagget ikke er angitt, dmCopies -medlem returnerer alltid 1, og dmCollate -medlem er alltid null. |
Når PrintDlg kommer tilbake, er nFromPage startsiden som er angitt av brukeren. Hvis alternativknappen sider er valgt når brukeren klikker OK -knappen, PrintDlg sett PD_PAGENUMS flagg og ikke gå tilbake til brukeren skriver inn en startverdi i siden, som er innenfor laveste som skal maksimal sideområde.
Windows 95: Hvis inndataverdien for enten nFromPage eller nToPage er utenfor området som angis av nMinPage og nMaxPage, returnerer PrintDlg en feil.
Windows NT: Hvis inndataverdi for enten nFromPage eller nToPage er utenfor området for minimums/maksimumsnøkler, PrintDlg returnerer en feil bare hvis flagget PD_PAGENUMS er angitt; Ellers vises dialogboksen men endres ut-av-omfang verdien til den minste eller største verdien.
Når PrintDlg kommer tilbake, er nToPage den siste siden som er angitt av brukeren. Hvis alternativknappen sider er valgt når bruk klikker OK -knappen, PrintDlg sett PD_PAGENUMS flagg og ikke gå tilbake til brukeren skriver inn en siste side-verdi som er innenfor laveste som skal maksimal sideområde.
Når du kaller funksjonen PrintDlg , bør du kontrollere at wDeviceOffset -medlem av DEVNAMES strukturen er identisk til dmDeviceName medlem av den strukturen DEVMODE . Hvis disse medlemmene ikke angir den samme skriveren, initialiserer PrintDlg dialogboksen ved hjelp av skriveren som er angitt av wDeviceOffset -medlemmet.
Vanligvis, hvis både hDevMode og hDevNames er NULL, initialiserer PrintDlg dialogboksen ved hjelp av den gjeldende standardskriveren. Hvis de Flagget PD_RETURNDEFAULT er satt, og både hDevMode og hDevNames er NULL, bruker imidlertid PrintDlg hDevNames og hDevMode -medlemmer til å returnere informasjon om den gjeldende standardskriveren uten å vise dialogboksen.
nbsp; Windows &NT: krever versjon 3.1 eller senere.
Windows:Krever Windows 95 eller senere.
Windows CE:Krever versjon 1.0 eller senere.
Topptekst:Deklarert i winspool.h.
Unicode:Definert som Unicode- og ANSI-strukturer.
Felles biblioteket dialogboksoversikt, felles dialogboksen boksen strukturer, CreateDC, CreateIC, PrintDlg, DEVMODE, DEVNAMES, WM_INITDIALOG