vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Schützen Sie Ihre Software vor Software-Piraterie - mit sevLock 1.0 DLL!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

Fortgeschrittene Programmierung
Re: Lottoscheine drucken 
Autor: VBRunner
Datum: 18.12.04 01:59

Hi CarpeDiem,

platziere eine Picturebox1(Appearance=0) auf eine Form, sowie ein Commandbuttons-Steuerelementfeld mit drei Buttons (Name=cmdButton(0-2)).
füge folgenden Code in die Form ein
Option Explicit
 
Private Sub cmdButton_Click(Index As Integer)
Dim nTNr As Integer
Dim nSNr As Long
Dim sTippRow As String
'--- Teststring - kann gelöscht werden
sTippRow = "1,2,3,4,5,6,7,12,13,18,19,24,25,30,31,36,37,39,40,41,42,43,44,45"
 
  Call Datenfelder_füllen
  Select Case Index
    Case 0 'Beenden
      Unload Me
    Case 1 'Schein drucken
      Call Drucke_Tippreihe(Printer, 1, 1, sTippRow)
      Printer.EndDoc
    Case 2 'Schein anzeigen
    'Hier per Schleife die Tippreihen einlesen und an den Drucker weiterleiten 
    ' z.B.
      For nTNr = 1 To 12
        Call Drucke_Tippreihe(Picture1, 1, nTNr, sTippRow)
      Next nTNr
      'Hier ggf. Schleife beenden
  End Select
End Sub
ersetze den Code im Modul durch folgenden
Option Explicit
Public fTipp(44, 1) As Long
Public fSchein(11, 1) As Long
Public nRndTop As Long
Public nRndLeft As Long
Public Sub Drucke_Tippreihe(ByVal Destination As Object, _
ByVal nScheinNr As Long, ByVal nTippNr As Long, ByVal sReihe As String)
Dim fRow() As String
Dim x As Integer
  fRow = Split(sReihe, ",")
  For x = 0 To UBound(fRow)
    With Destination
      .CurrentY = fTipp(Val(fRow(x)) - 1, 0) + fSchein(nTippNr - 1, 0) + nRndTop
      .CurrentX = fTipp(Val(fRow(x)) - 1, 1) + fSchein(nTippNr - 1, 1) + _
        nRndLeft
      Destination.Print "X"
    End With
  Next
End Sub
Public Sub Datenfelder_füllen()
Dim iLeft As Integer
Dim iTop As Integer
Dim x As Integer
'--- Array für Tippkästchen mit Positionswerten füllen
  iTop = mmToTwips(270) / 7   'Hier müssen die Werte von Spiel1 zu Spiel2 ( 
  ' senkrecht)
  iLeft = mmToTwips(190) / 5  'und Spiel1 zu Spiel11 (waagrecht) des 
  ' Spielscheins
  nRndTop = mmToTwips(194)    'sowie der Abstand vom Rand oben und Rand Links 
  ' Eingetragen werden
  nRndLeft = mmToTwips(37)    'Die Abmaße werden in 1/10 mm eingegeben
  Erase fTipp 'Array Tippfeld löschen
  For x = 0 To 44
    fTipp(x, 0) = Fix(x / 6) * iTop
    fTipp(x, 1) = (x Mod 6) * iLeft
    'Debug.Print TwipsToMillimeter(fTipp(x, 0)), TwipsToMillimeter(fTipp(x, 1))
  Next x
'--- Array für Spielschein mit Positionswerten füllen
  iTop = mmToTwips(310)
  iLeft = mmToTwips(1140) / 5
  Erase fSchein 'Array Spielschein löschen
  For x = 0 To 11
    fSchein(x, 0) = Fix(x Mod 2) * iTop
    fSchein(x, 1) = Fix(x / 2) * iLeft
    'Debug.Print TwipsToMillimeter(fSchein(x, 0)), TwipsToMillimeter(fSchein(x, 
    ' 1))
  Next x
End Sub
 
Public Function mmToTwips(ByVal Zehntel As Long) As Long
Dim vItem As Variant
Dim dTmp As Double
    vItem = Zehntel / 100
    dTmp = 1440 * vItem
    dTmp = dTmp / 2.54
    If dTmp >= 0 And dTmp <= 32767 Then
      mmToTwips = dTmp
    Else
      mmToTwips = 0
    End If
End Function
Public Function TwipsToMillimeter(ByVal nTwips As Long) As Long
Dim vItem As Variant
Dim dTmp As Double
    vItem = nTwips * 100
    dTmp = vItem / 1440
    dTmp = dTmp * 2.54
    dTmp = CInt(dTmp)
    If dTmp >= 0 And dTmp <= 32767 Then
      TwipsToMillimeter = dTmp
    Else
      TwipsToMillimeter = 0
    End If
End Function
 
Ein Klick auf cmdButton(2) zeigt die Kreuze in der Picturebox
Ein klick auf cmdButton(1) druckt sie.
 
CU,
 
VBRunner
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Lottoscheine drucken1.400CarpeDiem12.12.04 22:16
Re: Lottoscheine drucken852Don El Greeko13.12.04 16:13
Re: Lottoscheine drucken791CarpeDiem14.12.04 07:28
Re: Lottoscheine drucken817VBRunner16.12.04 01:29
Re: Lottoscheine drucken896CarpeDiem16.12.04 07:36
Re: Lottoscheine drucken819VBRunner16.12.04 11:42
Re: Lottoscheine drucken976CarpeDiem16.12.04 18:41
Re: Lottoscheine drucken738VBRunner17.12.04 02:02
Re: Lottoscheine drucken748VBRunner17.12.04 02:25
Re: Lottoscheine drucken787CarpeDiem17.12.04 14:46
Re: Lottoscheine drucken880VBRunner17.12.04 22:03
Re: Lottoscheine drucken947VBRunner18.12.04 01:59
Re: Lottoscheine drucken741CarpeDiem18.12.04 11:51
Re: Lottoscheine drucken705VBRunner16.12.04 12:02

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel