Gælder for
Access til Microsoft 365 Access 2021 Access 2019 Access 2016

Gælder for

Formularobjekt

Rapportobjekt

Du kan bruge egenskaben PrtDevMode til at angive eller returnere oplysninger om tilstanden for udskrivningsenheder, der er angivet for en formular eller rapport i dialogboksen Udskriv. Læs/skriv Variant.

udtryk.PrtDevMode

udtryk Påkrævet. Et udtryk, der returnerer et af objekterne på listen Gælder for.

Bemærkninger

Det anbefales på det kraftigste, at du rådfører dig med Win32 Software Development Kit for at se den komplette dokumentation vedr. egenskaberne PrtDevMode, PrtDevNames og PrtMip.

Egenskaben PrtDevMode er en 94-byte struktur, som afspejler den DEVMODE-struktur, der er defineret i Win32 Software Development Kit. Du finder komplette oplysninger om medlemmerne i egenskaben PrtDevMode i Win32 Software Development Kit.

Egenskaben PrtDevMode bruger følgende medlemmer.

Medlem

Beskrivelse

DeviceName

En streng med maksimalt 32 byte, der angiver navnet på den enhed, driveren understøtter – f.eks. "HP LaserJet IIISi", hvis Hewlett-Packard LaserJet IIISi er den angivne printer. Hver printerdriver har en entydig streng.

SpecVersion

Et Heltal, der angiver versionsnummeret for DEVMODE-strukturen i Win32 Software Development Kit.

DriverVersion

Et Heltal, der angiver printerdriverens versionsnummer, som er tildelt af printerdriverudvikleren.

Size

Et Heltal, der angiver størrelsen i byte på DEVMODE-strukturen. (Denne værdi omfatter ikke det valgfrie dmDriverData-medlem for enhedsspecifikke data, der kan følge efter denne struktur.) Hvis et program kun manipulerer den driveruafhængige del af dataene, kan du bruge dette medlem til at finde længden på denne struktur uden at tage højde for forskellige versioner.

DriverExtra

Et Heltal, der angiver størrelsen i bytes, for det valgfrie dmDriverData-medlem for enhedsspecifikke data, der kan følge efter denne struktur. Hvis et program ikke bruger enhedsspecifikke oplysninger, kan du indstille medlemmet til 0.

Fields

En Lang værdi, der angiver, hvilket af de resterende medlemmer i DEVMODE-strukturen der er blevet initialiseret.

Orientation

Et Heltal, der angiver papirets retning. Det kan være enten 1 (stående) eller 2 (liggende).

PaperSize

Et Heltal, der angiver størrelsen på papiret, der udskrives på. Hvis du indstiller dette medlem til 0 eller 256, er papirets længde og bredde henholdsvis angivet af medlemmerne PaperLength og PaperWidth. Ellers kan du indstille medlemmet PaperSize til en foruddefineret værdi.

PaperLength

Et Heltal , der angiver papirlængden i enheder på 1/10 af en millimeter. Dette medlem tilsidesætter den papirlængde, der er angivet af medlemmet PaperSize for brugerdefinerede papirstørrelser eller for enheder som f.eks. dot-matrixprintere, der kan udskrive på en række forskellige papirstørrelser.

PaperWidth

Et Heltal, der angiver papirbredden i enheder på 1/10 af en millimeter. Dette medlem tilsidesætter papirbredden, der er angivet af medlemmet PaperSize.

Scale

Et Heltal , der angiver den faktor, som udskriften skaleres med. Den synlige sidestørrelse skaleres fra den fysiske sidestørrelse med en skaleringsfaktor/100. Et stykke papir, der måler 8,5 x 11 tommer (letter-size) med en skaleringsværdi på 50, indeholder så mange data som en side, der måler 17 x 22 tommer, fordi outputteksten og grafikken ville være halvdelen af deres oprindelige højde og bredde.

Copies

Et Heltal, der angiver antallet af kopier, som udskrives, hvis udskrivningsenheden understøtter kopier af flere sider.

DefaultSource

Et Heltal, der angiver standardplaceringen, hvorfra papir fremføres.

PrintQuality

Et Heltal, der angiver printerens opløsning. Værdierne er –4 (høj), –3 (mellem), –2 (lav) og –1 (kladde).

Color

Et Heltal. For en farveprinter – angiver, om der skal udskrives i farve. Værdierne er 1 (farve) og 2 (sort-hvid).

Duplex

Et Heltal. For en printer med mulighed for dupleksudskrivning – angiver, om der skal udskrives på begge sider af papiret. Værdier er 1 (simpleks), 2 (vandret) og 3 (lodret).

YResolution

Et Heltal, der angiver printerens y-opløsning i punkter pr. tomme (dpi). Hvis printeren igangsætter dette medlem, så angiver medlemmet PrintQuality printerens x-opløsning i dpi.

TTOption

Et Heltal, der angiver, hvordan TrueType-skrifttyper udskrives.

Collate

Et Heltal, der angiver, om sortering skal bruges ved udskrivning af flere kopier. Sætvis kopiering giver en hurtigere og mere effektiv udskrivning, fordi dataene kun sendes til printeren én gang.

FormName

En streng på højst 16 tegn, der angiver papirstørrelsen – f.eks. "Letter" eller "Legal".

Pad

En Lang værdi, der bruges til at indsætte mellemrum, tegn eller værdier til fremtidige versioner.

Bits

En Lang værdi, der angiver visningsenhedens farveopløsning i bits pr. pixel.

PW

En Lang værdi, der angiver bredden på den synlige overflade på enheden (skærm eller printer) i pixel.

PH

En Lang værdi, der angiver højden på den synlige overflade på enheden (skærm eller printer) i pixel.

DFI

En Lang værdi, der angiver enhedens visningstilstand.

DFR

En Lang værdi, der angiver frekvensen for visningsenheden i en bestemt tilstand i hertz (cyklusser pr. sekund).

Bemærk!: Du kan angive egenskaben PrtDevMode ved hjælp af VBA-kode (Visual Basic for Applications).

Denne egenskabsindstilling har læse-/skriveadgang i Designvisning eller Layoutvisning og er skrivebeskyttet i andre visninger.

Printerdrivere kan tilføje enhedsspecifikke data umiddelbart efter de 94 bytes for DEVMODE-strukturen. Af denne grund er det vigtigt, at DEVMODE-dataene beskrevet ovenfor ikke overstiger 94 bytes.

Kun printerdrivere, der eksporterer funktionen ExtDeviceMode, bruger DEVMODE-strukturen.

Et program kan hente de papirstørrelser og navne, der understøttes af en printer, ved hjælp af værdierne DC_PAPERS, DC_PAPERSIZE og DC_PAPERNAMES til at kalde funktionen DeviceCapabilities.

Før du angiver værdien af TTOption-medlemmet, bør programmer finde ud af, hvordan en printerdriver kan bruge TrueType-skrifttyper ved hjælp af DC_TRUETYPE-værdien til at kalde DeviceCapabilities-funktionen.

Eksempel

I følgende eksempel anvendes egenskaben PrtDevMode til at kontrollere den brugerdefinerede sidestørrelse for en rapport:

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

Følgende eksempel viser, hvordan rapportens retning ændres. I dette eksempel ændres retningen fra stående til liggende eller liggende til stående afhængigt af rapportens aktuelle retning.

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

Har du brug for mere hjælp?

Vil du have flere indstillinger?

Udforsk abonnementsfordele, gennemse kurser, få mere at vide om, hvordan du sikrer din enhed og meget mere.