Home / Programmazione / Java / Stampare una JTable
Mattepuffo

Stampare una JTable

Stampare una JTable

Dopo aver visto come stampare con Javascript, oggi vediamo come farlo con Java.

Nel caso specifico io voglio stampare la mia JTable.

Ho aggiunto un JMenuItem e ho impostato un Action Performed.

Stampare una JTable è molto semplice in quanto, come anche altri componenti, eredita il metodo print().

Possiamo anche passargli uno o più parametri; vedete JTable.PrintMode.

Se vedete la pagina possiamo impostare anche più di un parametro.

Nel mio caso me ne basta uno ed è quello che imposta la larghezza in modo che tutte le colonne rientrino nella larghezza della pagina.

In fase di stampa imposto la stampante in modalità orizzontale.

Questo l'evento preso da Netbeans:

private void itemPrintActionPerformed(java.awt.event.ActionEvent evt) {                                         
try {
table.print(JTable.PrintMode.FIT_WIDTH); // STAMPO
} catch (PrinterException ex) {
JOptionPane.showMessageDialog(null, ex.getMessage());
}
}

Al momento del click sul JMentuItem viene richiamata la JTable table e il metodo print passaondogli come parametro JTable.PrintMode.FIT_WIDTH.

Cosi ottengo il risultato voluto.

Badate che viene stampata la situazione attuale della JTable, nel senso che se avete apllicato un filtro verrano stampati solo quelli filtrati; oppure vengono stampate le colonne nell'ordine impostato.

E questa è cosa buona e giusta!