[Dit is voorlopige documentatie en onderhevig aan veranderingen.]
De PRINTDLGEX structuur bevat informatie die de functie PrintDlgEx worden gebruikt voor het initialiseren van de eigenschap vel afdrukken . Nadat de gebruiker het eigenschappenvenster sluit, het systeem deze structuur gebruikt om informatie over selecties van de gebruiker retourneren.
typedef struct tagPDEX {}
DWORD lStructSize;
HWND hwndOwner;
HGLOBAL hDevMode;
HGLOBAL hDevNames;
HDC hDC;
DWORD Vlaggen;
DWORD Flags2;
DWORD ExclusionFlags;
DWORD nPageRanges;
DWORD nMaxPageRanges;
LPPRINTPAGERANGE lpPageRanges;
DWORD nMinPage;
DWORD nMaxPage;
DWORD nCopies;
HINSTANCE hInstance;
LPCTSTR lpPrintTemplateName;
LPUNKNOWN lpCallback;
DWORD nPropertyPages;
HPROPSHEETPAGE * lphPropertyPages;
DWORD nStartPage;
DWORD dwResultAction;
} PRINTDLGEX, * LPPRINTDLGEX
Als hDevMode NULL op input is, PrintDlgEx wijst geheugen toe voor de structuur DEVMODE , initialiseert haar leden om aan te geven de invoer van de gebruiker en geeft als resultaat een greep waarmee het.
Zie de opmerkingen aan het einde van dit onderwerp voor meer informatie over de hDevMode en hDevNames leden,.
De hDevNames lid kunt worden NULL, in welk geval, PrintDlgEx wijst geheugen toe aan de structuur DEVNAMES betrekking hebben , de inbreng van haar leden om aan te geven van de gebruiker, wordt geïnitialiseerd en retourneert een handvat dat identificeert het.
Zie de opmerkingen aan het einde van dit onderwerp voor meer informatie over de hDevMode en hDevNames leden,.
| PD_ALLPAGES | |
| De standaardvlag die aangeeft dat het keuzerondje alle in eerste instantie is geselecteerd. Deze vlag wordt gebruikt als een aanduiding om aan te geven dat de PD_PAGENUMS, PD_SELECTION en PD_CURRENTPAGE flags niet zijn opgegeven. | |
| PD_COLLATE | |
| Als deze vlag is ingesteld, is het selectievakje sorteren ingeschakeld. Als deze vlag is ingesteld wanneer de functie PrintDlgEx retourneert, moet de toepassing simuleren sortering van meerdere exemplaren. Voor meer informatie, zie de beschrijving van de vlag PD_USEDEVMODECOPIESANDCOLLATE. |
|
| PD_CURRENTPAGE | |
| Als deze vlag is ingesteld, wordt de Huidige pagina radio knop is geselecteerd. Als geen van de vlaggen PD_PAGENUMS, PD_SELECTION of PD_CURRENTPAGE is ingesteld, is het keuzerondje alle geselecteerd. | |
| PD_DISABLEPRINTTOFILE | |
| Hiermee schakelt u het selectievakje Afdrukken naar bestand. | |
| PD_ENABLEPRINTTEMPLATE | |
| Geeft aan dat de leden hInstance en lpPrintTemplateName in het onderste gedeelte van de pagina Algemeen een vervanging voor de standaard dialoogvenster vak sjabloon opgeven. De standaardsjabloon bevat besturingselementen die vergelijkbaar zijn met die van het dialoogvenster afdrukken . Het systeem de opgegeven sjabloon gebruikt om een venster dat is een kind van de algemene pagina maken. | |
| PD_ENABLEPRINTTEMPLATEHANDLE | |
| Geeft aan dat de hInstance lid identificeert een gegevensblok dat een voorgeladen dialoogvenster vak sjabloon bevat. Deze sjabloon vervangt de standaardsjabloon van de dialoogvenster vak in het onderste gedeelte van de pagina Algemeen . Het systeem gebruikt de opgegeven sjabloon te maken van een venster dat is een kind van de algemene pagina. Het systeem negeert de lpPrintTemplateName lid als deze vlag is opgegeven. | |
| PD_EXCLUSIONFLAGS | |
| Geeft aan dat de ExclusionFlags lid identificeert items worden uitgesloten van de printer stuurprogramma eigenschappenpagina's. Als deze vlag niet is ingesteld, zal items standaard van de printer stuurprogramma eigenschappenpagina's worden uitgesloten. De uitsluitingen voorkomen de duplicatie van items onder de algemene pagina, toepassing opgegeven pagina's en de printer stuurprogramma 's. | |
| PD_HIDEPRINTTOFILE | |
| Verbergt het selectievakje Afdrukken naar bestand. | |
| PD_NOCURRENTPAGE | |
| Hiermee schakelt u de knop Huidige pagina radio. | |
| PD_NOPAGENUMS | |
| De knop pagina's radio en de bijbehorende bewerken besturingselementen uitgeschakeld. | |
| PD_NOSELECTION | |
| Hiermee schakelt u de knop selectie radio. | |
| PD_NOWARNING | |
| Voorkomt dat het waarschuwingsbericht worden weergegeven wanneer een fout optreedt. | |
| PD_PAGENUMS | |
| Als deze vlag is ingesteld, worden de pagina's radio knop is geselecteerd. Als geen van de vlaggen PD_PAGENUMS, PD_SELECTION of PD_CURRENTPAGE is ingesteld, is het keuzerondje alle geselecteerd. Als deze vlag is ingesteld wanneer de functie PrintDlgEx retourneert, lid van de lpPageRanges geeft aan de door de gebruiker opgegeven paginabereiken. |
|
| PD_PRINTTOFILE | |
| Als deze vlag is ingesteld, is het selectievakje Afdrukken naar bestand geselecteerd. Als deze vlag is ingesteld als PrintDlgEx terugkeert, de offset aangegeven door het lid wOutputOffset van de structuur DEVNAMES bevat de tekenreeks "bestand:". Wanneer u belt de StartDoc functie om de afdrukken bewerking, te starten dit opgeven "bestand:" tekenreeks in het lid lpszOutput van de DOCINFO structuur. Het afdruksubsysteem opvragen van de gebruiker voor de naam van het uitvoerbestand opgeeft deze tekenreeks, wordt. |
|
| PD_RETURNDC | |
| Veroorzaakt PrintDlgEx om terug te keren een apparaatcontext die overeenkomen met de selecties van de gebruiker heeft aangebracht in het eigenschappenvenster. De device-context wordt geretourneerd in hDC. | |
| PD_RETURNDEFAULT | |
| Als deze vlag is ingesteld, wordt de functie PrintDlgEx niet het eigenschappenvenster weergegeven. In plaats daarvan, de hDevNames en hDevMode leden stelt deze ingangen naar DEVMODE en DEVNAMES structuren die voor de standaardprinter van systeem zijn geïnitialiseerd. Zowel hDevNames als hDevMode moet NULL of PrintDlgEx wordt een fout geretourneerd. | |
| PD_RETURNIC | |
| Vergelijkbaar met de vlag PD_RETURNDC, behalve deze vlag een context voor informatie in plaats van een device-context retourneert. Als noch PD_RETURNDC noch PD_RETURNIC is opgegeven, is hDC undefined op uitgang. | |
| PD_SELECTION | |
| Als deze vlag is ingesteld, is de knop selectie radio geselecteerd. Als geen van de vlaggen PD_PAGENUMS, PD_SELECTION of PD_CURRENTPAGE is ingesteld, is het keuzerondje alle geselecteerd. |
|
| PD_USEDEVMODECOPIES | |
| Hetzelfde als PD_USEDEVMODECOPIESANDCOLLATE | |
| PD_USEDEVMODECOPIESANDCOLLATE | |
| Deze vlag geeft aan of uw toepassing meerdere exemplaren en sortering ondersteunt. Deze vlag instellen op input om aan te geven dat uw toepassing biedt geen ondersteuning voor meerdere exemplaren en sortering. In dit geval het lid nCopies van de PRINTDLGEX -structuur geeft altijd 1 als resultaat, en PD_COLLATE is nooit ingesteld in de vlaggen lid. Als deze vlag niet is ingesteld, is de toepassing verantwoordelijk voor het afdrukken en meerdere exemplaren sorteren. In dit geval het lid nCopies van de PRINTDLGEX -structuur geeft het aantal exemplaren die de gebruiker wil afdrukken, en de PD_COLLATE vlag in de vlaggen lid geeft aan of de gebruiker wil sortering. Ongeacht of deze vlag is ingesteld, een toepassing kunt bepalen van nCopies en PD_COLLATE hoeveel exemplaren u wilt renderen en of u wilt afdrukken van hen gesorteerd. Als deze vlag is ingesteld en het printerstuurprogramma biedt geen ondersteuning voor meerdere exemplaren, is het besturingselement kopieën bewerken uitgeschakeld. Evenzo, als deze vlag is ingesteld en het printerstuurprogramma biedt geen ondersteuning voor sortering, het selectievakje sorteren is uitgeschakeld. De dmCopies en dmCollate leden van de DEVMODE -structuur de kopieën bevatten en verzamelen van informatie door het printerstuurprogramma gebruikt. Als deze vlag is ingesteld en het printerstuurprogramma meerdere kopieën ondersteunt, geeft lid van de dmCopies het aantal kopieën dat door de gebruiker is aangevraagd. Als deze vlag is ingesteld en het printerstuurprogramma sortering ondersteunt, het lid dmCollate van de structuur DEVMODE geeft aan of de gebruiker wil sortering. Als deze vlag niet is ingesteld, lid van de dmCopies retourneert altijd 1, en lid van de dmCollate is altijd nul. |
|
| PD_EXCL_COPIESANDCOLLATE | |
| Sluit de besturingselementen exemplaren en sorteren van de printer stuurprogramma eigenschappenpagina's in een eigenschappenvenster afdrukken . Deze vlag moet altijd worden ingesteld wanneer de toepassing de standaardbesturingselementen voor exemplaren en sorteren van het onderste gedeelte van de pagina Algemeen van het eigenschappenvenster afdrukken gebruikt. | |
Als de vlag PD_NOPAGENUMS is opgegeven, is deze waarde is niet geldig. Als de vlag PD_NOPAGENUMS niet opgegeven is, moet lpPageRanges niet-NULL.
Wanneer PrintDlgEx wordt geretourneerd, bevat nCopies het werkelijke aantal exemplaren die de toepassing moet afdrukken. Deze waarde is afhankelijk van of de toepassing of het printerstuurprogramma verantwoordelijk is voor het afdrukken van meerdere exemplaren. Als de vlag PD_USEDEVMODECOPIESANDCOLLATE is ingesteld in de vlaggen lid, nCopies is altijd 1 op terugkeer, en het printerstuurprogramma is verantwoordelijk voor het afdrukken van meerdere exemplaren. Als de vlag niet is ingesteld, is de toepassing verantwoordelijk voor het afdrukken van het aantal opgegeven door nCopiesexemplaren. Voor meer informatie, zie de beschrijving van de vlag PD_USEDEVMODECOPIESANDCOLLATE.
Het object moet bevatten de IPrintDialogCallback klasse om berichten te ontvangen van het dialoogvenster kind in het onderste gedeelte van de pagina Algemeen.
Het object terugbellen moet ook bevatten de IObjectWithSite klasse te ontvangen een aanwijzer naar de IPrintDialogServices -interface. De functieaanroepen PrintDlgEx QueryInterface op het object terugbellen voor zowel IID_IPrintDialogCallback als IID_IObjectWithSite om te bepalen welke interfaces worden ondersteund.
Als u niet ophalen van de callback-informatie wilt, lpCallback ingesteld op NULL.
| Waarde | Betekenis |
|---|---|
| PD_RESULT_APPLY | De gebruiker op de knop toepassen klikt en later op de knop Annuleren klikt. Dit geeft aan dat de gebruiker wil toepassen van de wijzigingen die zijn aangebracht in het eigenschappenvenster, maar niet wil afdrukken nog. De PRINTDLGEX structuur bevat de informatie die tijdens de door de gebruiker opgegeven de toepassen knop werd geklikt. |
| PD_RESULT_CANCEL | De gebruiker heeft geklikt op de knop Annuleren . De informatie in de PRINTDLGEX structuur is ongewijzigd. |
| PD_RESULT_PRINT | De gebruiker heeft geklikt op de knop afdrukken . De PRINTDLGEX structuur bevat de informatie die door de gebruiker opgegeven. |
Wanneer u de PrintDlgEx functie aanroepen, zorg ervoor dat het lid wDeviceOffset van de structuur DEVNAMES betrekking hebben is identiek aan het lid dmDeviceName van de de structuur DEVMODE . Als deze leden niet dezelfde printer opgeeft, initialiseert PrintDlgEx het eigenschappenvenster met behulp van de printer opgegeven door de wDeviceOffset lid.
Meestal, als zowel hDevMode als hDevNames NULL, PrintDlgEx initialiseert het eigenschappenvenster met behulp van de huidige standaardprinter. Als echter de vlag PD_RETURNDEFAULT is ingesteld en zowel hDevMode als hDevNames NULL zijn, PrintDlgEx gebruikt de hDevNames en hDevMode leden om informatie te retourneren over de huidige standaardprinter zonder het eigenschappenvenster weer te geven.
Tijdens de uitvoering van PrintDlgEx, de DEVMODE en DEVNAMES structuren die u hebt opgegeven in de PRINTDLGEX structuur kunnen niet altijd actuele gegevens bevatten. Om deze reden, toepassingsspecifieke eigenschappenpagina's evenals IPrintDialogCallback routines voor de eerste pagina moeten de IPrintDialogServices interface gebruiken voor het ophalen van informatie over de status van de huidige printer.
nbsp; Windows &NT: versie 5.0 of hoger vereist.
Windows:Niet-ondersteunde.
Windows CE:Niet-ondersteunde.
Header:Verklaard in commdlg.h.
Bibliotheek importeren:Gebruik comdlg32.lib.
Unicode:Gedefinieerd als Unicode en ANSI structuren.
Common Dialog Box Library Overview, Common Dialog Box Structures, CreateDC, CreateIC, CreatePropertySheetPage, DEVMODE, DEVNAMES, IObjectWithSite, IPrintDialogCallback, IPrintDialogServices, PrintDlgEx