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 / Forum översikt / inlägg

Posta nytt inlägg


Utskrift från listview

Postades av 2005-04-17 19:42:29 - Tor Erik Danielsson, i forum visual basic - allmänt, Tråden har 3 Kommentarer och lästs av 737 personer

Jag hittade denhär utskrifts-rutinen till en listview på forumet, postad av Andreas Hillqvist för några
år sen. Den fungerar utmärkt, men jag kan inte hitta något sätt att få raka högerkanter i kolumnerna.
Jag får bara raka vänsterkanter. Man vill ju ha ental ovanför varann i sifferkolumner. Försökte med
att lägga olika antal blanksteg först i varje subitem men siffrorna har inte samma bredd som blanksteg. Hur brukar man göra?
//Tor Erik


Public Sub PrintListView(ListView As ListView, Optional LeftMarginal As Single, Optional TopMarginal As Single, Optional RightMarginal As Single, Optional BottomMarginal As Single)
Dim Index As Long
Dim LVWidth As Long
Dim LastHeader As Long
Dim PrinterWidth As Single
Dim PrinterHeight As Single
Dim ColumnLeft() As Single

Dim ListItem As ListItem
Dim ColumnHeader As ColumnHeader
LVWidth = ColumnWidth(ListView)
LastHeader = ListView.ColumnHeaders.Count - 1
PrinterWidth = Printer.ScaleWidth - LeftMarginal - RightMarginal
PrinterHeight = Printer.ScaleHeight - TopMarginal - BottomMarginal

'Calculate headers position
ReDim ColumnLeft(0 To ListView.ColumnHeaders.Count)
ColumnLeft(0) = Printer.ScaleLeft + LeftMarginal
For Each ColumnHeader In ListView.ColumnHeaders
Index = Index + 1
ColumnLeft(Index) = ColumnLeft(Index - 1) + (ColumnHeader.Width * PrinterWidth \ LVWidth)
Next

'Prints headers on first page
PrintHeaders ListView, TopMarginal, ColumnLeft

For Each ListItem In ListView.ListItems
'Prints headers
If Printer.CurrentY > Printer.ScaleHeight - BottomMarginal Then
Printer.NewPage
PrintHeaders ListView, TopMarginal, ColumnLeft
End If

'Prints lines on page
Printer.CurrentX = ColumnLeft(0)
Printer.Print ListItem.Text;
For Index = 1 To LastHeader
Printer.CurrentX = ColumnLeft(Index)
Printer.Print ListItem.SubItems(Index);
Next
Printer.Print 'New Line
Next
Printer.EndDoc
End Sub

Private Sub PrintHeaders(ListView As ListView, TopMarginal As Single, ColumnLeft() As Single)
Dim Index As Long
Dim ColumnHeader As ColumnHeader
Printer.FontBold = True
Printer.CurrentY = Printer.ScaleTop + TopMarginal
For Each ColumnHeader In ListView.ColumnHeaders
Printer.CurrentX = ColumnLeft(Index)
Printer.Print ColumnHeader.Text;
Index = Index + 1
Next
Printer.Print 'New Line
Printer.FontBold = False
End Sub

Private Function ColumnWidth(ListView As ListView)
Dim ColumnHeader As ColumnHeader
For Each ColumnHeader In ListView.ColumnHeaders
ColumnWidth = ColumnWidth + ColumnHeader.Width
Next
End Function


Svara

Sv: Utskrift från listview

Postades av 2005-04-17 23:25:39 - Sven Åke Persson

Man använder Tab(antal tecken) för att definiera vänsterkanten.
sedan räknar man tecken i ordet för att placera dom rätt i höger justering.

Dvs Tab(antal tecken + hela området - antal aktuella tecken)

Kan se ut så här om det finn 4 tecken i ett område som börjar på Tab(50) och får innehålla 9 tecken

Print;Tab(50 + 9 - 4);"4,54"


Svara

Sv:Utskrift från listview

Postades av 2005-04-18 12:02:15 - Tor Erik Danielsson

Tack Sven, återkommer efter att ha labbat
//Tor Erik


Svara

Sv: Utskrift från listview

Postades av 2005-04-19 10:32:57 - Tor Erik Danielsson

I mitt fall är det current x som bestämmer positionen på raden. Fick fram
att en siffra har bredden 90 med den teckenstorlek jag använder. Så nu
funkar det att få raka högerkanter på kolumnerna. //Tor Erik


Svara

Nyligen

  • 14:24 CBD regelbundet?
  • 14:23 CBD regelbundet?
  • 14:22 Har du märkt några verkliga fördel
  • 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

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 614
27 953
271 709
366
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