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

Skriv ut innehållet från en Richtextbox

Postad 2000-10-19 av Staffan Berg i sektionen ASP.NET, C#, Okategoriserat med 0 Kommentarer | Läst av: 3260, Betyg: 80%

Förord

I denna artikel tänkte jag visa hur man kan få till utskrifter från en RichText-kontroll. Att använda denna kontroll för utskrifter erbjuder en rad fördelar. Det är t ex väldigt enkelt att formatera text, sätta tabbar och ange position för textavsnitten dokumentet. Dessutom skrivs sidorna ut snabbare än om du t ex använder Word med OLE. Du slipper också vara beroende av att användaren har rätt version Word installerad och därigenom slippa brottas med de konflikter som kan lätt kan uppstå.
Innehåll
  » Infoga en RichTextBox
  » Ställ in marginalerna
  » Var denna artikeln användbar?


Infoga en RichTextBox

Börja med att rita upp RichTextBox på ditt formulär. Finns den inte med i verktygslådan så får du bocka för Microsoft RichTextBox under References i Project-menyn. Döp sedan denna till exempelvis RTF. Sätt sedan egenskapen Visible till False. I exemplet som följer tänker jag mig att läsa in data från en vanlig textfil som jag sedan skriver in i RTF-rutan. Först av allt måste vi förvissa oss om att RTF-rutan är tom och innehållslös när vi börjar och det gör du lämpligen med denna kod:


RTF.SelStart = 0
RTF.SelLength = Len(RTF.Text)
RTF.SelText = ""

Bestäm sedan tabbarnas antal och position:


RTF.SelTabCount = 7
RTF.SelTabs(0) = 0
RTF.SelTabs(1) = 1900
RTF.SelTabs(2) = 3800
RTF.SelTabs(3) = 4100
RTF.SelTabs(4) = 5000
RTF.SelTabs(5) = 5800
RTF.SelTabs(6) = 6200

Nästa steg blir att ange formatet för rubriken i dokumentet. Här vill vi ha typsnittet Verdana med fet stil och storleken 18 bildpunkter samt blå färg. Det fixar vi så här:


' Formatera rubriktexten
RTF.SelFontSize = 18
RTF.SelFontName = "Verdana"
RTF.SelBold = True
' Stäng av kursiv och understruken stil
RTF.SelItalic = False
RTF.SelUnderline = False

' Vänsterjustera texten
RTF.SelAlignment = 0

' Välj blå färg till rubriken
RTF.SelColor = QBColor(9)

Sedan namnger vi rubriken till något lämpligt. Till mitt exempel skriver jag ut en adresslista. Sedan gör jag två radmatningar med Chr(10):


RTF.SelText = "Adresslista" & Chr(10) & Chr(10)

Efter att det är klart är det dags att namnge kolumnrubrikerna och här får vi användning av tabbarna vi satte tidigare. För att flytta till nästa tabläge använder vi oss av ASCII-värdet 9 på samma sätt som vi använder värdet 10 för radmatningar.


' Formatera...
RTF.SelFontSize = 10
RTF.SelFontName = "Verdana"
RTF.SelBold = True
RTF.SelItalic = False
RTF.SelUnderline = False
RTF.SelAlignment = 0
' Ange svart text
RTF.SelColor = QBColor(0)

' Skriv in kolumnrubrikerna.
RTF.SelText = "Namn" & Chr(9)
RTF.SelText = "Adress" & Chr(9)
RTF.SelText = "Postnr" & Chr(9)
RTF.SelText = "Ort" & Chr(9)
RTF.SelText = "Telefon" & Chr(9)
RTF.SelText = "Ålder" & Chr(9)
RTF.SelText = "Skonr" & Chr(10)

För att fylla din RTF-ruta så måste du ha data tillgängliga i en textfil. Se till att det finns data i sju avdelningar på varje rad i textfilen avgränsade med kommatecken.
Det skulle kunna se ut något i den här stilen (namnen är fingerade):





"Ann Gerhardsson", "Storgatan 111", "333 44", "Storsnärle", "133 47", "17", "37"
"Bengt Karlsson", "Smedjebacken 2", "565 21", "Nöbble", "143 67", "69", "44"
"Pia Grenfors", "Älggatan 5", "199 18", "Undefors", "216 12", "29", "34"
"Ulf Ahlbom", "Fondstigen 71", "526 12", "Olskrokshult", "29 29 71", "23", "31"
"Harald Hårfager", "Flintastigen 1", "522 56", "Viskaborg", "12 40 63", "82", "44"
"Staffan Berg", "Gökgatan 32", "574 38", "Vetlanda", "122 63", "36", "45"
"Jensa Stridh", "Borggatan 33", "141 89", "Övlandehult", "989 12 73", "55", "45"
"Gertrud Hansson", "Pl 3431", "572 66", "Hornsstad", "14 22 66", "70", "35"
"Fläsk-Tarzan", "Hundgatan 34", "345 22", "Biffköping", "429 28", "55", "46"
"Olle Turesson", "Ögatan 44", "888 88", "Östad", "333 63", "54", "42"


Sedan är det dags att fylla dokumentet med de uppgifter som finns sparade i textfilen.
Skriv in följande kod för att loopa genom hela textfilen (Textfile.txt) och sedan skriva in data i din RTF-ruta.


f = Freefile
Open "Textfile.txt" For Input As f
Do While Not EOF(f)
Input #f, Namn, Adress, Postnummer, Ort, Telefon, Ålder, Skonummer
RTF.SelFontSize = 10
RTF.SelFontName = "Verdana"
RTF.SelBold = True
RTF.SelItalic = False
RTF.SelUnderline = False
RTF.SelAlignment = 0
RTF.SelColor = QBColor(0)
' Hämta in data från textfil och lägg in dessa i sju variabler.
RTF.SelText = Namn & Chr(9)
RTF.SelText = Adress & Chr(9)
RTF.SelText = Postnummer & Chr(9)
RTF.SelText = Ort & Chr(9)
RTF.SelText = Telefon & Chr(9)
RTF.SelText = Ålder & Chr(9)
RTF.SelText = Skonummer & Chr(10)
Loop
Close f


Ställ in marginalerna

Det som återstår nu är att ställa in marginalerna på dokumentet och till detta hittar du ett utmärkt exempel under Tips & Tricks här på SAND Online som du kan använda dig av. Länken till denna kod hittar du här.

I detta exempel finner du diverse globala procedurer och anrop till Windows API som bl a ser till att sätta marginalerna på ditt dokument efter de värden du själv ställer in. Du ställer in marginalerna genom att anropa subrutinen PrintRTF:


PrintRTF RTF, 1000, 1200, 1440, 1440


Var denna artikeln användbar?

Om du gör någon intressant som grund av detta material så skicka gärna det med ett mail eller bifoga en länk till mig så presenterar jag detta som ytterligare exempelfiler för kursen. Om detta innehållet är felaktigt eller du lärt dig fler finesser så skriv gärna en rad eller varför inte en egen kurs baserat på dina erfarenheter. Sänd gärna in dina tips till denna kurs.

/Staffan Berg
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
868
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