Vzťahuje sa na
Access pre Microsoft 365 Access 2021 Access 2019 Access 2016

Vzťahuje sa na

Objekt Formulár

Objekt Report

Vlastnosť PrtDevMode môžete použiť na nastavenie alebo vrátenie informácii o režime tlačového zariadenia, ktoré sú špecifikované pre formulár alebo zostavu v dialógovom okne Tlačiť. Variant na čítanie a zapisovanie.

výraz.PrtDevMode

Výraz Povinný argument. Výraz, ktorý vráti jeden z objektov v zozname Vzťahuje sa na.

Poznámky

Dôrazne sa odporúča pozrieť si úplnú dokumentáciu k vlastnostiam PrtDevMode, PrtDevNames a PrtMip v súprave Win32 Software Development Kit.

Vlastnosť PrtDevMode je 94-bajtová štruktúra, ktorá zrkadlí štruktúru DEVMODE definovanú v súprave Win32 Software Development Kit. Úplné informácie o členoch vlastnosti PrtDevMode získate v súprave Win32 Software Development Kit.

Vlastnosť PrtDevMode používa nasledovných členov.

Člen

Popis

Názov zariadenia

Reťazec podporuje maximálne 32 bajtov, ktoré určujú názov zariadenia podporovaného ovládačom, napríklad HP LaserJet IIISi, ak je zadanou tlačiarňou Hewlett-Packard LaserJet IIISi. Každý ovládač tlačiarne má jedinečný reťazec.

SpecVersion

Celé číslo, ktoré určuje číslo verzie štruktúry DEVMODE v súprave Win32 Software Development Kit.

DriverVersion

Celé číslo, ktoré určuje číslo verzie ovládača tlačiarne a ktoré priradil vývojár ovládača tlačiarni.

Veľkosť

Celé číslo, ktoré určuje veľkosť štruktúry DEVMODE v bajtoch. (Táto hodnota nezahŕňa voliteľného člena dmDriverData týkajúceho sa údajov špecifických pre zariadenie, ktoré môžu využívať túto štruktúru.) Ak aplikácia pracuje iba s časťou údajov, ktoré sú nezávislé na ovládači, môžete tohto člena používať na zisťovanie dĺžky štruktúry bez nutnosti zohľadňovania rôznych verzií.

DriverExtra

Celé číslo, ktoré určuje veľkosť voliteľného člena dmDriverData týkajúceho sa údajov špecifických pre zariadenie, ktoré môžu využívať túto štruktúru. Ak aplikácia nepoužíva informácie špecifické pre zariadenie, nastavte tohto člena na hodnotu 0.

Polia

Hodnota Long, ktorá určuje, ktorí zo zostávajúcich členov štruktúry DEVMODE boli inicializovaní.

Orientácia

Celé číslo, ktoré určuje orientáciu papiera. Môže mať hodnotu 1 (na výšku) alebo 2 (na šírku).

Veľkosť papiera

Celé číslo, ktoré určuje veľkosť papiera, ktorý sa použije pri tlači. Ak nastavíte tohto člena na hodnotu 0 alebo 256, dĺžka a šírka papiera budú určené členmi PaperLength a PaperWidth. Ak nie, môžete nastaviť člena Veľkosť papiera na preddefinovanú hodnotu.

PaperLength

Celé číslo, ktoré určuje dĺžku papiera v jednotkách s veľkosťou minimálne 1/10 milimetra. Tento člen prepíše dĺžku papiera, ktorá je zadaná pomocou člena Veľkosť papiera pre vlastné veľkosti papiera alebo pre zariadenia ako ihličkové tlačiarne, ktoré dokážu tlačiť na papieri s rôznymi veľkosťami.

PaperWidth

Celé číslo, ktoré určuje šírku papiera v jednotkách s veľkosťou minimálne 1/10 milimetra. Tento člen prepíše šírku papiera, ktorá je zadaná pomocou člena Veľkosť papiera.

Mierka

Celé číslo, ktoré určuje koeficient, ktorým sa mení mierka tlačeného výstupu. Pravá veľkosť strany sa stanovuje zmenou mierky skutočnej veľkosti strany a koeficientu mierka/100. Napríklad papier s rozmermi 8,5 x 11 palcov (listový formát) s mierkou v hodnote 50 by obsahoval rovnaký počet údajov ako strana s rozmermi 17 x 22 palcov, pretože výsledný text a grafika by mali iba polovicu ich pôvodnej výšky a šírky.

Kópie

Celé číslo, ktoré určuje počet kópií na vytlačenie, ak zariadenie podporuje viacstranového kópie.

DefaultSource

Celé číslo, ktoré určuje predvolený zásobník, z ktorého sa podáva papier.

PrintQuality

Celé číslo, ktoré určuje rozlíšenie tlačiarne. Hodnoty sú – 4 (vysoká), – 3 (stredná) – 2 (nízka), a -1 (koncept).

Farba

Celé číslo. Vo farebných tlačiarňach určuje, či sa má tlačiť farebne alebo nie. Hodnoty sú 1 (farebne) a 2 (čiernobielo).

Obojstranne

Celé číslo. V tlačiarňach umožňujúcich obojstrannú tlač určuje, či sa má tlačiť na oboch stranách papiera. Hodnoty sú 1 (jednostranne), 2 (vodorovne) a 3 (zvislo).

YResolution

Celé číslo, ktoré určuje rozlíšenie na osi y tlačiarne v počte bodov na palec (dpi). Ak tlačiareň inicializuje tohto člena, člen PrintQuality určuje rozlíšenie na osi x tlačiarne v dpi.

TTOption

Celé číslo, ktoré určuje, ako sa vytlačia písma TrueType.

Zoradiť

Celé číslo, ktoré určuje, či sa má pri tlači viacerých kópií použiť zoradenie. Nezoradenie kópií znamená rýchlejšiu a efektívnejšiu tlač, pretože údaje sa do tlačiarne odosielajú iba raz.

FormName

Reťazec s maximálne 16 znakmi, ktorý určuje veľkosť použitého papiera, napríklad Letter alebo Legal.

Pad

Hodnota Long, ktorá sa používa ako výplň pre medzery, znaky alebo hodnoty v budúcich verziách.

Bits

Hodnota Long, ktorá určuje farebné rozlíšenie v bitoch na pixel zobrazovacieho zariadenia.

PW

Hodnota Long, ktorá určuje šírku v pixeloch viditeľnej plochy zariadenia (obrazovky alebo tlačiarne).

PH

Hodnota Long, ktorá určuje výšku v pixeloch viditeľnej plochy zariadenia (obrazovky alebo tlačiarne).

DFI

Hodnota Long, ktorá určuje režim zobrazenia zariadenia.

DFR

Hodnota Long, ktorá určuje frekvenciu v Hz (cykly za sekundu) zobrazovacieho zariadenia v konkrétnom režime.

Poznámka: Vlastnosť PrtDevMode môžete nastaviť pomocou kódu programu Visual Basic for Applications (VBA).

Táto vlastnosť je v návrhovom zobrazení alebo zobrazení rozloženia nastavená na čítanie a zapisovanie, a v ostatných zobrazeniach iba na čítanie.

Ovládače tlačiarní môžu pridávať údaje špecifické pre zariadenie hneď po 94 bajtoch štruktúry DEVMODE. Z tohto dôvodu je dôležité, aby údaje štruktúry DEVMODE neprekračovali veľkosť 94 bajtov.

Štruktúru DEVMODE môžu používať iba ovládače tlačiarní, ktoré exportujú funkciu ExtDeviceMode.

Aplikácia môže načítať veľkosti a názvy papiera podporované tlačiarňou vykonaním funkcie DeviceCapabilities pomocou hodnôt DC_PAPERS, DC_PAPERSIZE a DC_PAPERNAMES.

Pred nastavením hodnoty člena TTOption by aplikácie mali zistiť, ako ovládač tlačiarne používa písma TrueType vykonaním funkcie DeviceCapabilities pomocou hodnoty DC_TRUETYPE.

Príklad

V nasledujúcom príklade sa používa vlastnosť PrtDevMode na kontrolu veľkosti strany zadanej používateľom pre zostavu:

Private Type str_DEVMODE    RGB As String * 94End TypePrivate Type type_DEVMODE    strDeviceName As String * 32    intSpecVersion As Integer    intDriverVersion As Integer    intSize As Integer    intDriverExtra As Integer    lngFields As Long    intOrientation As Integer    intPaperSize As Integer    intPaperLength As Integer    intPaperWidth As Integer    intScale As Integer    intCopies As Integer    intDefaultSource As Integer    intPrintQuality As Integer    intColor As Integer    intDuplex As Integer    intResolution As Integer    intTTOption As Integer    intCollate As Integer    strFormName As String * 32    lngPad As Long    lngBits As Long    lngPW As Long    lngPH As Long    lngDFI As Long    lngDFr As LongEnd TypePublic Sub CheckCustomPage(ByVal rptName As String)    Dim DevString As str_DEVMODE    Dim DM As type_DEVMODE    Dim strDevModeExtra As String    Dim rpt As Report    Dim intResponse As Integer    ' Opens report in Design view.    DoCmd.OpenReport rptName, acDesign    Set rpt = Reports(rptName)    If Not IsNull(rpt.PrtDevMode) Then        strDevModeExtra = rpt.PrtDevMode        ' Gets current DEVMODE structure.        DevString.RGB = strDevModeExtra        LSet DM = DevString        If DM.intPaperSize = 256 Then            ' Display user-defined size.            intResponse = MsgBox("The current custom page size is " & _                          DM.intPaperWidth / 254 & " inches wide by " & _                          DM.intPaperLength / 254 & " inches long. Do you want " & _                          "to change the settings?", vbYesNo + vbQuestion)        Else            ' Currently not user-defined.            intResponse = MsgBox("The report does not have a custom page size. " & _                          "Do you want to define one?", vbYesNo + vbQuestion)        End If        If intResponse = vbYes Then            ' User wants to change settings. Initialize fields.            DM.lngFields = DM.lngFields Or DM.intPaperSize Or _                           DM.intPaperLength Or DM.intPaperWidth            ' Set custom page.            DM.intPaperSize = 256            ' Prompt for length and width.            DM.intPaperLength = InputBox("Please enter page length in inches.") * 254            DM.intPaperWidth = InputBox("Please enter page width in inches.") * 254            ' Update property.            LSet DevString = DM            Mid(strDevModeExtra, 1, 94) = DevString.RGB            rpt.PrtDevMode = strDevModeExtra        End If    End If    Set rpt = NothingEnd Sub

Nasledujúci príklad popisuje zmenu orientácie zostavy. V tomto príklade sa uskutoční zmena z orientácie Na výšku na orientáciu Na šírku alebo z orientácie Na šírku na orientáciu Na výšku v závislosti od aktuálnej orientácie zostavy.

Public Sub SwitchOrient(ByVal strName As String)    Const DM_PORTRAIT = 1    Const DM_LANDSCAPE = 2    Dim DevString As str_DEVMODE    Dim DM As type_DEVMODE    Dim strDevModeExtra As String    Dim rpt As Report    ' Opens report in Design view.    DoCmd.OpenReport strName, acDesign    Set rpt = Reports(strName)    If Not IsNull(rpt.PrtDevMode) Then        strDevModeExtra = rpt.PrtDevMode        DevString.RGB = strDevModeExtra        LSet DM = DevString        DM.lngFields = DM.lngFields Or DM.intOrientation        ' Initialize fields.        If DM.intOrientation = DM_PORTRAIT Then            DM.intOrientation = DM_LANDSCAPE        Else            DM.intOrientation = DM_PORTRAIT        End If        ' Update property.        LSet DevString = DM        Mid(strDevModeExtra, 1, 94) = DevString.RGB        rpt.PrtDevMode = strDevModeExtra    End If    Set rpt = NothingEnd Sub

Potrebujete ďalšiu pomoc?

Chcete ďalšie možnosti?

Môžete preskúmať výhody predplatného, prehľadávať školiace kurzy, naučiť sa zabezpečiť svoje zariadenie a ešte oveľa viac.