Dialoogvenster Afdrukken

Het dialoogvenster afdrukken laat de gebruiker opties voor een bepaalde afdruktaak. Bijvoorbeeld, kan de gebruiker opgeven de printer om te gebruiken, het bereik van pagina's afdrukken en het aantal exemplaren.

Windows NT 5.0 en hoger: De PrintDlgEx -functie kunt u een eigenschap vel afdrukken , die heeft een algemene pagina met controles vergelijkbaar met het dialoogvenster afdrukken weergeven. Het eigenschappenvenster kan ook hebben aanvullende toepassingsspecifieke en stuurprogrammaspecifieke eigenschappenpagina's na de algemene pagina.

U maakt en een dialoogvenster afdrukken weergeven door een PRINTDLG structuur initialiseren en de structuur doorgeven aan de functie PrintDlg.

De volgende afbeelding ziet u een typische dialoogvenster afdrukken.

Als de gebruiker op OK wordt geklikt, PrintDlg waar als resultaat geeft en de PRINTDLG structuur gebruikt om informatie over selecties van de gebruiker te retourneren. Bijvoorbeeld, de hDevMode en hDevNames leden meestal terug globale geheugen grepen voor DEVMODE en DEVNAMES structuren. U kunt de informatie in deze structuren maken een device-context of een informatie-context voor de geselecteerde printer.

Als de gebruiker in het dialoogvenster afdrukken annuleert of een fout optreedt, wordt PrintDlg FALSE retourneert. U kunt de oorzaak van een fout met de CommDlgExtendedError -functie de uitgebreide foutwaarde ophaalt.

Het dialoogvenster afdrukken bevat een Afdrukbereik groep keuzerondjes die aangeven of de gebruiker wil afdrukken van alle pagina's, een bereik van pagina's of alleen de geselecteerde tekst. Voordat u PrintDlgaanroept, kunt u een van de vlaggen van de PD_ALLPAGES, PD_SELECTION of PD_PAGENUMS om aan te geven welke knop is in eerste instantie geselecteerd instellen. Wanneer PrintDlg waar als resultaat geeft, kunt u de functie een van deze vlaggen om aan te geven van de gebruiker selecties. Als PD_PAGENUMS is ingesteld, bevat de nFromPage en nToPage leden van de PRINTDLG structuur het eerste en laatste pagina's door de gebruiker opgegeven. Wilt uitschakelen het keuzerondje pagina's en bijbehorende van en besturingselementen om te bewerken, stelt u de vlag PD_NOPAGENUMS. De selectie radio-knop uitschakelen, stelt u de markering PD_NOSELECTION.

Het dialoogvenster bevat een edit-besturingselement waarin de gebruiker het aantal af te drukken exemplaren kunt typen. Als het lid hDevMode van de PRINTDLG structuur niet-NULL, is het lid dmCopies van de de structuur DEVMODE Hiermee geeft u de initiŽle waarde voor dit besturingselement bewerken. Als hDevMode NULL is, geeft het lid nCopies van de PRINTDLG structuur de beginwaarde. Wanneer PrintDlg wordt geretourneerd, geeft het aantal kopieŽn dat door de gebruiker opgegeven meestal aan nCopies . Echter, als u de vlag PD_USEDEVMODECOPIESANDCOLLATE instellen wanneer u het dialoogvenster maakt, nCopies is altijd ingesteld op 1 op terugkeer en de dmCopies lid van DEVMODE geeft het aantal af te drukken exemplaren.

Het selectievakje sorteren in geeft aan of de gebruiker wil verzamelen de pagina's als meerdere exemplaren worden afgedrukt. De vlag PD_COLLATE is ingesteld als het selectievakje sorteren is ingeschakeld. Als uw toepassing niet meerdere kopieŽn of gesimuleerde sortering ondersteunt, stel de PD_USEDEVMODECOPIESANDCOLLATE vlag in de vlaggen lid van de PRINTDLG structuur. Hiermee schakelt u het selectievakje sorteren in en het Nummer van kopieŽn bewerken controle tenzij het printerstuurprogramma ondersteunt meerdere exemplaren en sortering.

Het selectievakje Afdrukken naar bestand geeft aan of de gebruiker wil uitvoer naar een bestand in plaats van naar een printer verzenden. U kunt de PD_PRINTTOFILE vlag instellen zodat het selectievakje aanvankelijk is ingeschakeld. Te verbergen het selectievakje in, stel de PD_HIDEPRINTTOFILE vlag. Uit te schakelen, stel de PD_DISABLEPRINTTOFILE vlag. Als de gebruiker de optie Afdrukken naar bestand selecteert, PrintDlg stelt u de vlag PD_PRINTTOFILE en geeft als resultaat "bestand:" op de offset aangegeven door het lid wOutputOffset van de structuur DEVNAMES betrekking hebben . 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.

Standaard weergegeven in het dialoogvenster afdrukken in eerste instantie informatie over de huidige standaardprinter. Kunt u direct het informatie voor een andere geÔnstalleerde printer weergeven met het initialiseren van een DEVMODE of structuur DEVNAMES betrekking hebben en het globale geheugen toewijzen behandelen voor de structuur aan het lid hDevMode of hDevNames . Het apparaatnaam die u in het lid dmDeviceName van de structuur DEVMODE of in het lid wDriverOffset van de structuur DEVNAMES betrekking hebben opgeeft moet identificeren een printer-apparaat dat wordt ook vermeld in de sectie [Devices] voor de overwinning.INI-bestand. Als het apparaat niet wordt vermeld, PrintDlg wordt een fout geretourneerd.

U kunt directe PrintDlg maken een device-context of informatie context voor de printer door de vlag PD_RETURNDC of PD_RETURNIC in de vlaggen lid van de PRINTDLG structuur. De functie retourneert de greep van de device-context of informatie context in de hDC -lid. Als u de vlag PD_RETURNDC gebruiken, kunt u de device-context om output te genereren voor de printer.

Instellen voor het ophalen van informatie over de standaardprinter zonder het dialoogvenster afdrukken weer te geven, de PD_RETURNDEFAULT vlag. In dit geval, retourneert PrintDlg onmiddellijk na het instellen van de hDevMode en hDevNames leden aan ingangen voor structuren met de informatie.

Standaard worden PrintDlg berichtvensters weergegeven als er fouten optreden. Bijvoorbeeld, wordt de functie een foutbericht weergegeven als er geen printers zijn geÔnstalleerd. Om te voorkomen dat de functie deze waarschuwingsberichten worden weergegeven, stelt u de markering PD_NOWARNING.

Index