Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it L'avatar di Mychy
    Registrato dal
    Oct 2000
    Messaggi
    794

    [VB.NET] Seconda pagina di stampa

    Come crea la seconda pagina utilizzando questo codice?

    codice:
    Private Sub PrintDocument1_PrintPage(ByVal sender As Object, ByVal e As System.Drawing.Printing.PrintPageEventArgs) Handles PrintDocument1.PrintPage
            Dim myFont As New System.Drawing.Font("Arial", 24, FontStyle.Bold)
            Dim myFormat As New Drawing.StringFormat()
            myFormat.FormatFlags = Drawing.StringFormatFlags.DirectionRightToLeft
    
            'intestazione
            ................       
            'corpo della stampa
            
            'connessione con il DB
            Dim myconnect As New OleDb.OleDbConnection("Provider=Microsoft.Jet.OleDb.4.0;Data Source=" & varServer)
           .......
    
            Try
                rs.Connection.Open()
                rsRea = rs.ExecuteReader(CommandBehavior.CloseConnection)
    
                Dim varY As Integer
                varY = 150
                Dim FontCorpo As New System.Drawing.Font("Arial", 12, FontStyle.Regular)
    
                Do While rsRea.Read()
                    e.Graphics.DrawString(rsRea.Item("Cognome") & " " & rsRea.Item("Nome"), FontCorpo, Drawing.Brushes.Black, 28, varY)
                    varY = varY + 20
                    If varY > 1100 Then
                      '** Qui devo inserire una nuova pagina...
                    End If             
                Loop
                
            Catch ex As OleDb.OleDbException
                MessageBox.Show("Errore nella stampa", varTitolo, MessageBoxButtons.OK, MessageBoxIcon.Error)
            End Try
        End Sub

  2. #2
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    261

    Re: [VB.NET] Seconda pagina di stampa

    Originariamente inviato da Mychy
    Come crea la seconda pagina utilizzando questo codice?

    codice:
    If varY > 1100 Then
    '** Qui devo inserire una nuova pagina...
    End If           
     Loop
    prova così
    codice:
    If varY > 1100 then
       e.HasMorePages = True
       exit do
    Else
       e.HasMorePages = False
    End If

  3. #3
    Utente di HTML.it L'avatar di Mychy
    Registrato dal
    Oct 2000
    Messaggi
    794
    Grazie Teflo, ma così facendo mi crea un numero infinito di pagine

  4. #4
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,480
    Credo che tu debba determinare a priori il numero di pagine che devi andare a creare, o il set di record da scandire, per poter successivamente impostare HasMorePages nel modo opportuno (se ci sono altre pagine o altri record da stampare alla fine della pagina).

    Ciao!
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.