Logg på med Microsoft
Logg på, eller opprett en konto.
Hei,
Velg en annen konto.
Du har flere kontoer
Velg kontoen du vil logge på med.

Gjelder for

Skjemaobjekt

Report-objektet

Du kan bruke egenskapen PrtDevMode til å angi eller returnere modusinformasjon for en skriverenhet spesifisert for et skjema eller en rapport i dialogboksen Skriv ut. Variant for lesing/skriving.

uttrykk.PrtDevMode

uttrykk Påkrevd. Et uttrykk som returnerer ett av objektene i Gjelder for-listen.

Merknader

Det anbefales sterkt at du slår opp i Win32 Software Development Kit for fullstendig dokumentasjon om egenskapene PrtDevMode, PrtDevNames og PrtMip.

Innstillingen for egenskapen PrtDevMode er en struktur på 94 byte som gjenspeiler DEVMODE-strukturen som er definert i Win32 Software Development Kit. Slå opp i Win32 Software Development Kit for all informasjon om medlemmene av egenskapen PrtDevMode.

Egenskapen Mode i PrtDev bruker de følgende medlemmene.

Medlem

Beskrivelse

DeviceName

En streng med maksimalt 32 byte som angir navnet på enheten som driveren støtter, for eksempel «HP LaserJet IIISi» hvis Hewlett-Packard LaserJet IIISi er den angitte skriveren. Hver skriverdriver har en unik streng.

SpecVersion

Et heltall som angir versjonsnummeret til DEVMODE-strukturen i Win32 Software Development Kit.

DriverVersion

Et heltall som angir skriverens versjonsnummer som er angitt av utvikleren av skriverdriveren.

Size

Et heltall som angir størrelsen på DEVMODE-strukturen i byte. (Denne verdien inkluderer ikke det valgfrie dmDriverData-medlemmet for enhetsspesifikke data, som kan følge denne strukturen.) Hvis et program påvirker bare den driveruavhengige delen av dataene, kan du bruke dette medlemmet til å finne strukturlengden uten å måtte ta hensyn til forskjellige versjoner.

DriverExtra

Et heltall som angir størrelsen på det valgfrie dmDriverData-medlemmet i byte for enhetsspesifikke data, som kan følge denne strukturen. Hvis et program ikke bruker enhetsspesifikk informasjon, kan du angi dette medlemmet til 0.

Fields

En lang verdi som angir hvilke av de gjenværende medlemmene i DEVMODE-strukturen som er initialisert.

Orientation

Et heltall som angir retningen på papiret. Det kan være enten 1 (stående) eller 2 (liggende).

PaperSize

Et heltall som angir størrelsen på papiret som skrives ut. Hvis du setter dette medlemmet til 0 eller 256, angis lengden og bredden på papiret av henholdsvis medlemmene PaperLength og PaperWidth. Hvis ikke kan du angi PaperSize-medlemmet til en forhåndsdefinert verdi.

PaperLength

Et heltall som angir papirlengden i enheter på 1/10 millimeter. Dette medlemmet overstyrer papirlengden som er angitt av PaperSize-medlemmet for egendefinerte papirstørrelser eller for enheter som matriseskrivere som kan skrives ut på en rekke forskjellige papirstørrelser.

PaperWidth

Et heltall som angir papirbredden i enheter på 1/10 millimeter. Dette medlemmet overstyrer papirbredden som angis av PaperSize-medlemmet.

Scale

Et heltall som angir skaleringsfaktoren for utskriften. Den effektive sidestørrelsen skaleres fra den fysiske sidestørrelsen med en faktor på skala/100. Et papir som måler 8,5 x 11 tommer (Letter-størrelse), vil med en skalaverdi på 50 for eksempel inneholde så mye data som en side som måler 17 x 22 tommer, fordi utdatateksten og grafikken vil være halvparten av den opprinnelige høyden og bredden.

Copies

Et heltall som angir hvor mange eksemplarer som skrives ut hvis skriveren støtter kopier av flere sider.

DefaultSource

Et heltall som angir standardskuffen som papiret mates fra.

PrintQuality

Et heltall som angir skriveroppløsning. Verdiene er – 4 (høy), – 3 (middels), – 2 (lav) og – 1 (kladd).

Color

Et heltall. Angir om utskriften skrives ut i farger på en fargeskriver. Verdiene er 1 (farge) og 2 (svart-hvitt).

Duplex

Et heltall. Angir om utskriften skrives ut på begge sider av papiret på en skriver som støtter dobbeltsidig utskrift. Verdiene er 1 (enkeltsidig), 2 (vannrett) og 3 (loddrett).

YResolution

Et heltall som angir skriverens y-oppløsning i punkt per tomme (ppt). Hvis skriveren initialiserer dette medlemmet, angir PrintQuality-medlemmet skriverens x-oppløsning i ppt.

TTOption

Et heltall som angir hvordan TrueType-skrifter skrives ut.

Collate

Et heltall som angir om sortering skal brukes ved utskrift av flere eksemplarer. Bruk av usorterte eksemplarer gir raskere og mer effektiv utskrift fordi dataene bare sendes til skriveren én gang.

FormName

En streng med maksimalt 16 tegn som angir papirstørrelsen som brukes, for eksempel Letter eller Legal.

Pad

En lang verdi som brukes til å fylle ut mellomrom, tegn eller verdier for fremtidige versjoner.

Bits

En lang verdi som angir fargeoppløsningen på visningsenheten i biter per piksel.

PW

En lang verdi som angir bredden på enhetens synlige overflate i piksler (skjerm eller skriver).

PH

En lang verdi som angir høyden på enhetens synlige overflate i piksler (skjerm eller skriver).

DFI

En lang verdi som angir enhetens visningsmodus.

DFR

En lang verdi som angir frekvensen til visningsenheten i en bestemt modus i hertz (sykluser per sekund).


Obs!: Du kan angi egenskapen PrtDevMode ved å bruke VBA-kode (Visual Basic for Applications).

Denne egenskapsinnstillingen kan leses og skrives til i utformingsvisning og oppsettvisning og bare leses i andre visninger.

Skriverdrivere kan legge til enhetsspesifikke data rett etter de 94 bytene i DEVMODE-strukturen. Derfor er det viktig at DEVMODE-dataene som beskrives ovenfor, ikke overskrider 94 byte.

Bare skriverdrivere som eksporterer ExtDeviceMode-funksjonen, bruker DEVMODE-strukturen.

Et program kan hente papirstørrelser og -navn som støttes av en skriver, ved å bruke verdiene DC_PAPERS, DC_PAPERSIZE og DC_PAPERNAMES til å kalle opp DeviceCapabilities-funksjonen.

Før verdien av TTOption-medlemmet angis, bør programmer finne ut hvordan en skriverdriver kan bruke TrueType-skrifter, ved å bruke DC_TRUETYPE-verdien til å kalle opp DeviceCapabilities-funksjonen.

Eksempel

Det følgende eksemplet bruker egenskapen PrtDevMode til å kontrollere den brukerdefinerte sidestørrelsen for en rapport:

Private Type str_DEVMODE
RGB As String * 94
End Type
Private 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 Long
End Type
Public 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 = Nothing
End Sub

Det følgende eksemplet viser hvordan du kan endre retningen for rapporten. Dette eksemplet endrer papirretningen fra stående til liggende eller fra liggende til stående avhengig av den gjeldende papirretningen til rapporten.

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 = Nothing
End Sub

Trenger du mer hjelp?

Vil du ha flere alternativer?

Utforsk abonnementsfordeler, bla gjennom opplæringskurs, finn ut hvordan du sikrer enheten og mer.

Fellesskap hjelper deg med å stille og svare på spørsmål, gi tilbakemelding og høre fra eksperter med stor kunnskap.

Var denne informasjonen nyttig?

Hvor fornøyd er du med språkkvaliteten?
Hva påvirket opplevelsen din?
Når du trykker på Send inn, blir tilbakemeldingen brukt til å forbedre Microsoft-produkter og -tjenester. IT-administratoren kan samle inn disse dataene. Personvernerklæring.

Takk for tilbakemeldingen!

×