E aí pessoal blz!!
Estou com um probleminha para imprimir um relatório de clientes.
Quando o relatório ocupa só uma página, imprime correto, mas
quando o relatório ocupa mais de uma página, não imprime.
Se por exemplo deu 3 páginas, ele imprime a primeira página
3 vezes.
Se alguém souber me ajudar, eu preciso disso o mais rápido possível!!!
Valeu!!!
Abaixo segue parte do código:
//evento do botão imprimir
private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton2ActionPerformed
PrinterJob impressora = PrinterJob.getPrinterJob();
impressora.setPrintable(this);
if(impressora.printDialog())
{
try
{
impressora.print();
}
catch(Exception erro)
{
JOptionPane.showMessageDialog(null,"Erro ao imprimir!!!","Aviso",JOptionPane.ERROR_MESSAGE);
}
}
}//GEN-LAST:event_jButton2ActionPerformed
public int print(Graphics g, PageFormat formato, int pagina)
{
Graphics2D tela;
tela = (Graphics2D) g;
tela.translate(formato.getImageableX(),formato.getImageableY());
if(pagina == 0)
{
String codigo = "";
String nome = "";
tela.drawString("Relatório de Clientes", 125, 50);
tela.drawString("Código", 3, 95);
tela.drawString("Nome", 45, 95);
int linha = 120;
linhas = modelo.getRowCount();
for(int i = 0; i < linhas; i++)
{
codigo = "" + modelo.getValueAt(i,0);
nome = "" + modelo.getValueAt(i,1);
tela.drawString(codigo, 3, linha);
tela.drawString(nome, 45, linha);
linha += 15;
}
return(PAGE_EXISTS);
}
else
return(NO_SUCH_PAGE);
}