Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Artiklar / Titel på artikeln

Enkla utskrifter med VB.NET

Postad 2003-04-04 av Gustav Nilsson i sektionen ASP.NET, C#, Okategoriserat med 0 Kommentarer | Läst av: 9740, Betyg: 79%

Förord

I den artikeln kommer jag att skriva om hur man gör en utskrift i VB.NET
Innehåll
  » Lägga till kontroller
  » En enkel utskrift
  » Skriva ut text
  » Skriva ut linjer och rektanglar
  » Lite extra finesser
  » Slutord
Relaterade artiklar
  » Introduktion till Visual Basic .Net


Lägga till kontroller

För att kunna göra utskrifter i VB.NET behövs egentligen bara en kontroll. Det är PrintDocument. Men det är bra ifall man får välja vilken skrivare man vill skriva ut på osv. Lägg därför även till en PrintDialog till ditt form.



Döp PrintDocument och PrintDialog och sätt egenskapen document på PrintDialog till det du har döp ditt PrintDocument. Lägg även till en knapp till ditt formulär.


En enkel utskrift

Nu har vi börjat komma till själva koden. När användaren klickar på knappen skall PrintDialog komma upp. Sen skall pappret skrivas ut.


Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

If PrintDialog1.ShowDialog = DialogResult.OK Then
PrintDocument1.Print()
End If

End Sub


Men utskriften är inte färdig än. Man måste också ange vad som skall skrivas på pappret. Det gör man i händelsen PrintDocument1_PrintPage. Nu skall vi skriva "Min utskrift" på pappret.


Private Sub PrintDocument1_PrintPage(ByVal sender As Object, ByVal e As System.Drawing.Printing.PrintPageEventArgs) Handles PrintDocument1.PrintPage

e.Graphics.DrawString("Min utskrift", New Font("Comic Sans MS", 20, FontStyle.Bold), Brushes.Black, 200, 200)

End Sub


Den här koden skriver "Min utskrift" i Comic Sans MS storlek 20 i fet stil och svart färg. De två sista värdena är till för att bestämma var på pappret texten skall skrivas. Ett papper är 827 brett och 1169 högt men kom ihåg att lämna marginal. Själv så brukar jag arbeta med höjden 100 -> 1069 och bredden 100 -> 727.


Skriva ut text

Nu skall vi kolla närmare på e.Graphics.DrawString(). Det finns lite olika varianter på den men jag kommer att gå genom den som jag visade tidigare. Först anger man texten. Det är inga svårigheter med det. Sen skall man ange stilen. Om man skall skriva mycket kan man lagra den i variabel.


Dim oFont As Font
oFont = New Font("Comic Sans Ms", 20, FontStyle.Bold)


När man ska skall skapa en Font anger man stil, storlek och ifall texten skall vara fet, kursiv, understruken, osv. Nu skall vi gå vidare med nästa värde i e.Graphics.DrawString(). Det är vilken färg texten skall ha. Man skriver Brushes, punkt och färgen. Sen anger man x och y-koordinaterna.




Skriva ut linjer och rektanglar


I den här delen kommer jag att gå igenom hur man ritar (ev. kladdar) på pappret. Innan man börjar rita måste man skapa en penna. Den skapar man genom att skriva.


Dim oPenna As Pen
oPenna = New Pen(Color.Black, 3)


Man anger färg och tjocklek. Nu skall vi rita en linje med hjälp av pennan.


e.Graphics.DrawLine(oPenna, 100, 100, 300, 300)


Här anger man först vilken penna man vill ha, sedan startpositionen för linjen x och y och till sist slutpositionen för linjen x, y. Nu skall vi även försöka rita en rektangel.


e.Graphics.DrawRectangle(oPenna, 100, 100, 200, 200)


Först anger man vilken penna, precis som när man ritar linjer. Sen anger man vad övre vänstra hörnet skall vara x, y. Slutligen anger man bredd och höjd. Om man nu vill har rektangeln ifylld så byter man ut DrawRectangle() mot FillRectangle(). Istället för att ange en penna skriver man Brushes.Black. Givetvis kan man byta färg.


e.Graphics.FillRectangle(Brushes.Green, 100,100, 200, 200)



Lite extra finesser

Om du inte vill slösa med papper och patron vid testutskrifter, lägg till en PrintPreviewDialog, ange ditt PrintDocument under egenskapen Document och skriv i Button1_Click():


PrintPreviewDialog.ShowDialog()


Om du vill visa ett meddelande "Utskriften har skickats till skrivaren" så gör du det i händelsen PrintDocument1_EndPrint().


Private Sub PrintDocument1_EndPrint(ByVal sender As Object, ByVal e As System.Drawing.Printing.PrintEventArgs) Handles PrintDocument1.EndPrint

MsgBox("Utskriften har skickats till skrivaren")

End Sub


Om du vill kolla hur många installerade skrivare som finns så tar du och skriver:


Dim intAntal As Integer

intAntal = PrintDocument1.PrinterSettings.InstalledPrinters.Count


En annan sak som man ibland vill kolla är om skrivaren klarar färgutskrifter


Dim bKlararFärg As Boolean

bKlararFärg =PrintDocument1.PrinterSettings.SupportsColor


Koden ovan returnerar true ifall standardskrivaren klarar färg.


Slutord

Nu var det slut på den här artikeln och jag hoppas att du har lärt dig lite om hur man gör utskrifter i VB.NET.

/Gustav Nilsson
Upp

0 Kommentarer

Skriv en kommentar på artikeln

Ditt betyg på artikeln



Kommentar:





Nyligen

  • 09:09 Vill du köpa medicinska tester?
  • 12:47 Vem beviljar assistansen – kommune
  • 14:17 Någon med erfarenhet av hemstädnin
  • 14:14 Bör man använda sig av en båtförme
  • 14:12 Finns det någon intressant hundblo
  • 14:25 Tips på verktyg för att skapa QR-k
  • 14:23 Tips på verktyg för att skapa QR-k
  • 20:52 Fungerer innskuddsbonuser egentlig

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 569 153
27 952
271 704
1 073
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies