Avatar billede cyberspace Nybegynder
04. december 2002 - 09:41 Der er 5 kommentarer og
1 løsning

udskrift funktion

Jeg har lavet et lottoprogram

og som et ekstra ting vil jeg gerne lave en udskrift funktion. Men jeg behøver lidt hjælp. Da jeg ikke helt kan få det til at funke korekt
Avatar billede reds2001 Nybegynder
04. december 2002 - 10:56 #1
Jeg mener at du bare kan bruge en dialogbox og så sætte showprinter propertien.
Avatar billede martin_moth Mester
04. december 2002 - 11:14 #2
Prøv at lav et nyt projekt. Put en textbox (Text1), en CommandButton (Command1) og en CommonDialog (CommonDialog1)

Commondialog skal du måske tilføje din tools-palette, hvis den ikke er der i forvejen. Tryk Ctrl+T, og afkryds Microsoft Commondialog

Kopier følgende kode, og du har et program der kan udskrive en tekst på en valgfri printer. Herefter kan du jo bare tilpasse koden til dit eget project :o)

Option Explicit

Private Sub Command1_Click()
  Dim i As Integer
  Dim StartSide As Integer
  Dim SlutSide As Integer
 
  'Sætter diverse indstillinger for print-dailogboxen
  CommonDialog1.PrinterDefault = False
  CommonDialog1.CancelError = True
  CommonDialog1.DialogTitle = "Udskriv tekst"
  CommonDialog1.FontName = "MS Sans Serif"
  Printer.ScaleMode = 6 'millimeter
  CommonDialog1.Flags = cdlPDHidePrintToFile Or cdlPDNoSelection
  On Error GoTo Fejl
 
  'Viser Printdialogboxen
  CommonDialog1.ShowPrinter
     
  'Udskriver
  For i = 1 To CommonDialog1.Copies
    Printer.ScaleMode = 1 'twips
    Printer.CurrentX = 200
    Printer.CurrentY = 200
    Printer.Print "Udskriftsdato: " & Date
    Printer.CurrentX = 200
    Printer.CurrentY = 600
    Printer.Print Text1.Text
  Next i
  MsgBox "Udskrift slut"
  Exit Sub
Fejl:
  If Err.Number = 32755 Then Exit Sub '32755=Cancle
  MsgBox "En fejl opstod under udskrift (fejlnr. " & Err.Number & ")", vbCritical + vbOKOnly, "Fejl"
End Sub

Private Sub Form_Load()
  Command1.Caption = "Udskriv"
  Text1.MaxLength = 150
  Text1.Text = "Skriv den tekst der skal udskrives her"
End Sub
Avatar billede martin_moth Mester
04. december 2002 - 11:54 #3
PS: Slet linien Printer.ScaleMode = 1 'twips, herefter kan du angive koordinater i [mm]. Det er nok lidt lettere at håndtere... Det var en fejl, at jeg fik den sat til twips.

Og så skift fx. Printer.CurrentX = 200 ud med Printer.CurrentX = 20 opg så videre - ellers kan det ikke være på papiret...
Avatar billede cyberspace Nybegynder
08. december 2002 - 15:25 #4
martin moth>> denne udskrift funktion, udskriver den ikke bare hvad der er på skærmen.
Det udskriftfunktionen skal er at udskrive 10 rækker af 7 tal. de 10 rækker ses ved at klikke på en næste funktion (en rækkepå skærmen af gangen)
dvs. der skulle gerne udskrives 1 side med 10 rækker af 7 tal
Avatar billede martin_moth Mester
08. december 2002 - 17:29 #5
Den kode jeg har givet dig udskriver ikke hvad der er på skærmen. Den udskriver de ting, du selv vælger, med Printer.Print "Denne tekst skal udskrives"

Hvis du vil udskrive 10 rækker med et eller andet indhold i hver række:

dim i as integer
for i = 0 to 9
  Printer.CurrentX = 20
  Printer.CurrentY = 20 + 10 * i
  Printer.Print "Række med 7 tal"
next i

- vælg selv dine koordinater, så det passer...
Avatar billede cyberspace Nybegynder
10. december 2002 - 09:11 #6
Martin moth>> Fint, så skal der udskrives
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester