Componente PrintForm (Visual Basic)
Il componente PrintForm per Visual Basic 2010 consente di stampare un'immagine di un Windows Form in fase di esecuzione. Il comportamento di questo componente sostituisce quello del metodo PrintForm nelle versioni precedenti di Visual Basic.
Cenni preliminari sul componente PrintForm
Un scenario comune per Windows Form consiste nel creare un form formattato in modo simile a quello di un modulo cartaceo o di un rapporto e stampare quindi un'immagine di tale form. Per eseguire questa operazione, è possibile utilizzare anche un componente PrintDocument ma è necessaria una grande quantità di codice. Il componente PrintForm consente di stampare un'immagine di un form su una stampante, in una finestra di anteprima di stampa o in un file senza utilizzare un componente PrintDocument.
Il componente PrintForm si trova nella scheda Visual Basic Power Pack della casella degli strumenti. Quando trascinato in un form, il componente viene visualizzato nella barra dei componenti, la piccola area situata sotto il bordo inferiore del form. Quando il componente viene selezionato, nella finestra Proprietà è possibile impostare le proprietà che ne definiscono il comportamento. Tutte queste proprietà possono essere impostate anche nel codice. È anche possibile creare un'istanza del componente PrintForm nel codice senza aggiungere il componente in fase di progettazione.
Quando si stampa un form, vengono stampati tutti gli elementi che si trovano nell'area client del form (inclusi tutti i controlli ed eventuale testo o grafica creati nel form mediante i metodi grafici). Per impostazione predefinita, la barra del titolo, le barre di scorrimento e il bordo del form non vengono stampati. Sempre per impostazione predefinita, il componente PrintForm stampa solo la parte visibile del form. Ad esempio, se l'utente ridimensiona il form in fase di esecuzione, vengono stampati solo i controlli e la grafica attualmente visibili.
La stampante predefinita utilizzata dal componente PrintForm viene determinata dalle impostazioni definite nel Pannello di controllo del sistema operativo.
Una volta iniziata la stampa, viene visualizzata una finestra di dialogo di stampa standard del componente PrintDocument. Questa finestra di dialogo consente agli utenti di annullare il processo di stampa.
Metodi, proprietà ed eventi principali
Il metodo principale del componente PrintForm è il metodo Print, che stampa un'immagine del form su una stampante, una finestra di anteprima di stampa o un file. Sono disponibili due versioni del metodo Print:
Versione di base senza parametri: Print()
Versione di overload con parametri che specificano il comportamento di stampa: Print(printForm As Form, printFormOption As PrintOption)
Il parametro PrintOption del metodo di overload determina l'implementazione sottostante utilizzata per stampare il form e specifica se la barra del titolo, le barre di scorrimento, il bordo e le parti scorrevoli del form vengono stampati.
La proprietà PrintAction è la proprietà principale del componente PrintForm. Questa proprietà determina, infatti, se l'output viene inviato a una stampante, visualizzato in una finestra di anteprima di stampa o salvato come file Encapsulated PostScript. Se la proprietà PrintAction è impostata su PrintToFile, la proprietà PrintFileName specifica il percorso e il nome del file.
La proprietà PrinterSettings fornisce accesso a un oggetto PrinterSettings sottostante che consente di specificare impostazioni quali la stampante da utilizzare e il numero di copie da stampare. È anche possibile eseguire una query sulle funzionalità della stampante, quali il supporto della stampa a colori o della modalità fronte/retro. Questa proprietà non viene visualizzata nella finestra Proprietà ed è accessibile solo dal codice.
La proprietà Form viene utilizzata per specificare il form da stampare quando si richiama il componente PrintForm a livello di codice. Se il componente viene aggiunto a un form in fase di progettazione, tale form rappresenta l'impostazione predefinita.
Gli eventi principali per il componente PrintForm includono:
Evento BeginPrint. Si verifica quando viene chiamato il metodo Print (e prima della stampa della prima pagina del documento).
Evento EndPrint. Si verifica dopo la stampa dell'ultima pagina.
Evento QueryPageSettings. Si verifica immediatamente prima della stampa di ogni pagina.
Osservazioni
Se un form contiene testo o grafica creati mediante i metodi Graphics, utilizzare il metodo Print (Print()) di base per stampare il form. Quando viene utilizzato il metodo Print di overload, in alcuni sistemi operativi non è possibile eseguire il rendering della grafica.
Se la larghezza di un form è maggiore della larghezza del foglio nella stampante, è possibile che il lato destro del form venga troncato. Quando si progettano form da stampare, assicurarsi che il form corrisponda a un foglio di dimensioni standard.
Esempio
Nell'esempio riportato di seguito viene illustrato l'utilizzo comune del componente PrintForm.
' Visual Basic.
Dim pf As New PrintForm
pf.Form = Me
pf.PrintAction = PrintToPrinter
pf.Print()
Vedere anche
Attività
Procedura: stampare un form utilizzando il componente PrintForm (Visual Basic)
Procedura: stampare l'area client di un form (Visual Basic)
Procedura: stampare aree client e non client di un form (Visual Basic)
Procedura: stampare un form scorrevole (Visual Basic)