Mandar pra impressora o que esta no JTable

Boa tarde galera! Tem como mandar pra impressora (imprimir de fato) todo conteudo da minha JTable, ela é pequena tem 93 linhas.

Claro :slight_smile:

PrinterJob job = PrinterJob.getPrinterJob();
job.setPrintable(table.getPrintable(PrintMode.FIT_WIDTH, null, null));
job.setJobName("Nome do Trabalho de impressão");
if (job.printDialog()) {
 job.print();
}

Nussa Cara funcionou perfeito, tem como vc me explicar essa linha:

job.setPrintable(jTable.getPrintable(PrintMode.FIT_WIDTH, null, null)); 

Brigadão.

http://www.ensta.fr/~diam/java/online/jdk/150/api/javax/swing/JTable.html#getPrintable(javax.swing.JTable.PrintMode, java.text.MessageFormat, java.text.MessageFormat)

Esse método retorna um objeto Printable que o PrinterJob consegue imprimir.

PrintMode.FIT_WIDTH é um argumento que redimensiona a tela para caber em largura.

Os outros dois argumentos que estão null são MessageFormats que serve para a mensagem do header e do footer.

Vlw Mark!!! Vlw ae Diorgio tb!!!

E se eu quiser especificar em que posição da folha o jtable inicia e qual posição é eu limite???

getPrintable da classe JTable é um “quebra-galho” e não permite muita customização.

Para mais detalhes, leia o javadoc de getPrintable ( http://docs.oracle.com/javase/6/docs/api/javax/swing/JTable.html#getPrintable(javax.swing.JTable.PrintMode,%20java.text.MessageFormat,%20java.text.MessageFormat) ) e de JTable.PrintMode ( http://docs.oracle.com/javase/6/docs/api/javax/swing/JTable.PrintMode.html ) .

Se precisar de algo mais complexo, use um gerador de relatórios como o iReport.

Sobre este método mais recomentado de impressão. aonde posso estudar melhor sobre ele? e possível fazer listas com ele?.

Bom, digamos que é com o iReport que o programa do Imposto de Renda (que é em Java) gera aqueles PDFs que são o formulário do imposto, devidamente preenchido.