Modulo continuo

martedì 20 gennaio 2004 - 20.01

Stenfeltio Profilo | Newbie

Ragazzi,
non so' piu' a che santo votarmi!.
Il mio problema, lo ripeto è relativo alla stampa di alcune etichette in modulo continuo
con un formato fuori dalle regole.
Ho provato in tutte le salse ma mi stampa sempre un modulo A4 e poi mi stampa l'altra fila di etichette, quindi mi fà un salto pagina.
Ho bisogno in pratica tramite codice di impostare le misure a me occorrenti e stampare poi le etichette in modulo continuo.
Chi mi aiuta?
Sal

Stenfeltio Profilo | Newbie

Ho provato in effetti la soluzione seguente dopo aver impostato tramite
Windows il mio modulo personale:

Try
PrintDocument1.DefaultPageSettings = PrintPageSettings
PrintDialog1.Document = PrintDocument1
Dim result As DialogResult = PrintDialog1.ShowDialog()
If result = DialogResult.OK Then
Dimensioni.Visible = False : LeggiFile()
End If
Catch ex As Exception
MessageBox.Show(ex.Message)
End Try

In effetti in questo modo mi stampa il modulo di cui io ho bisogno ma
non è il metodo che mi toglie dal pantano in quanto nel programma
ho bisogno di formati differenti secondo il lavoro che svolgo ed ogni
volta con questa classe si perde un sacco di tempo per cercare il
modulo appropriato.
Senza l'ausilio di PrintDialog1.ShowDialog e possibile soltanto tramite
codice impostare un modulo pensonalizzato?
Grazie anticitao
Sal

Stenfeltio Profilo | Newbie

Ciao Marco e scusami se mi dilungo,
ho impasticciato quanto di scrivo:


Sub Stampare()
Dim Pd As New PrintDocument()
Try
Dim Ps As New PaperSize("MioModulo", 800, 545)
Dim Prs As Printing.PrinterSettings = Pd.DefaultPageSettings.PrinterSettings()
Pd.DefaultPageSettings.PaperSize = Ps
With Pd.DefaultPageSettings
.PaperSize = Prs.PaperSizes(Prs.PaperSizes.Count - 1)
If .PaperSize.Kind = PaperKind.Custom Then
AddHandler Pd.PrintPage, AddressOf Me.PrintText
Pd.Print()
End If
End With
Catch ex As Exception
MessageBox.Show(ex.Message)
End Try
End Sub

Domanda:
non dovrebbe direttamente settarmi il mio modulo alle misure che ho dichiarato
e poi farmi un salto pagina?
Se tutto cio' che ti scrivo puo' sembrarti banale sappi che per me
il .net è un hobby che per mio utilizzo di lavoro adopero.
Grazie e Ciao
Sal

Stenfeltio Profilo | Newbie

Ciao Marco,
niente da fare, non ci riesco!
Sono due giorni che ci provo e a parte il mal di testa
non sono riuscito a fare altro.
Sal

Stenfeltio Profilo | Newbie


Sempre io Marco,
senti:
tramite pageSetupDialog ed avendo impostato a priori il mio modulo tramite Windows riesco a fare cio' di cui ho bisogno, la domanda è:
tramite codice è possibile aggiungere il mio modulo ( e non aggiungendolo tramite Windows)?

Ciao
Sal

Stenfeltio Profilo | Newbie

Ciao Marco,
porcaccia la miseria, dove sbaglio?:

Private Sub PrintDocument1_PrintPage(ByVal sender As System.Object, ByVal ev As _System.Drawing.Printing.PrintPageEventArgs) Handles Pd.PrintPage
Try
Dim Pd As New PrintDocument()
Dim customSize As New PaperSize("custom size", 1000, 541)
Pd.DefaultPageSettings.PaperSize = customSize
With Pd.DefaultPageSettings
If .PaperSize.Kind = PaperKind.Custom Then
ev.PageSettings.PaperSize = customSize
End If
End With
Catch ex As Exception
MessageBox.Show(ex.Message)
End Try
ev.Graphics.DrawString(YT1, New Font("Arial", 10, FontStyle.Regular), Brushes.Black, 15, 80)
ev.Graphics.DrawString(YT2, New Font("Arial", 10, FontStyle.Regular), Brushes.Black, 255, 80)
ev.Graphics.DrawString(YT3, New Font("Arial", 10, FontStyle.Regular), Brushes.Black, 290, 80)
ev.Graphics.DrawString(YT4, New Font("Arial", 10, FontStyle.Regular), Brushes.Black, 35, 113)
ev.Graphics.DrawString(YT5, New Font("Arial", 10, FontStyle.Regular), Brushes.Black, 133, 113)
end sub

Se puoi aiutami
Grazie!
Sal
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5