On May 17, 2007, at 09:42 , Giovanni Gualeni wrote:
- c'e' un metodo per inserire delle mie opzioni di stampa nella
finestra di stampa?
- come si gestisce, in una stampa di piu' pagine, la stampa di
alcune specifiche pagine?
esempio:
predispongo una stampa che contiene 3 pagine (printPAGE.NextPage //
banale ma tant'e'). Vorrei prima della stampa attivare una opzione
per stampare o meno un marchietto nella pagina e vorrei stampare ad
esempio solo la pagina 2.
Ciao Giovanni,
per quanto riguarda il ripristino ed il salvataggio delle
impostazioni "generiche" del driver di stampa puoi utilizzare la
classe PrinterSetup, in particolare la proprietà SetupString.
Dim PageSetup as PrinterSetup = New PrinterSetup()
If PageSetup.PageSetupDialog Then
PrintWindow.PageSettings = PageSetup.SetupString
'Salvo le impostazioni di stampa
Dim PrinterSettings As FolderItem = New FolderItem("")
If PrinterSettings <> nil And PrinterSettings.IsWriteable Then
Dim t As TextOutputStream
t = PrinterSettings.CreateTextFile()
t.Write(PageSettings)
t.Close()
End If
End If
Per le impostazioni di stampa legate alla tua applicazione, io
affronterei il problema creando un pannello di opzioni da
visualizzare al momento della stampa e che utilizzerai per generare
l'oggetto Graphics relativo.
'Stampa
Dim g as Graphics
Dim PageSetup As New PrinterSetup()
'Se non ci sono impostazioni di stampa valide apro la finestra di
impostazioni
If PrintWindow.PageSettings = "" Then
PrintWindow.PrinterSetup.Show()
End If
PageSetup.SetupString = PrintWindow.PageSettings
g = OpenPrinterDialog(PageSetup)
If g <> Nil Then
'Disegno sull'oggetto Graphics a seconda delle impostazioni
If PrintLogoRadioButton.Value Then
DrawLogo(g)
Else
...
End If
End If
PrintWindow.Close()
--
gilberto de faveri
omnidea srl
edificio pegaso
parco scientifico tecnologico vega
via delle industrie, 15
30175 venezia marghera
tel +39 041 509 3441
fax +39 041 509 3641
www.omnidea.it
|