Estou puxando dados de um banco de dados e tentando imprimir, a impressao até acontece, mas não da forma que eu queria, deveria ser montada uma lista, mas os dados que veem do banco, (que ficam num ResultSet) acabam saindo um apos o outro, o resultado esta sendo esse
XXXXXXXXXXXXSSSSSSSSSSDDDDDDDD e deveria ser
XXXXXXXXXXXX
SSSSSSSSSSSSSS
DDDDDDDDDDD
, estou anexando os arquivos, se puderem me ajudar, valeu… grato…
PRIMEIRO ARQUIVO********
package jabor.impressao.guias;
/**
- @author
- Alteracoes por Danilo de Melo Santos
*/
import java.awt.Color;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.font.LineBreakMeasurer;
import java.awt.font.TextLayout;
import java.awt.geom.Point2D;
import java.awt.print.Book;
import java.awt.print.PageFormat;
import java.awt.print.Printable;
import java.awt.print.PrinterException;
import java.awt.print.PrinterJob;
import java.sql.Connection;
import java.text.AttributedCharacterIterator;
import java.text.AttributedString;
import banco.conecta.ConectaBanco;
public class ImpressaoGuiaAtual implements Printable {
private String mText = ImprimirBuscaUltimaGuia.stringImpressao;
private AttributedString mStyledText = new AttributedString(mText);
private ImprimirBuscaUltimaGuia impBuscUltGuia;
private Connection con;
public void imprimir() {
impBuscUltGuia = new ImprimirBuscaUltimaGuia(con);
PrinterJob printerJob = PrinterJob.getPrinterJob();
Book book = new Book();
book.append(new ImpressaoGuiaAtual(), new PageFormat());
printerJob.setPageable(book);
boolean doPrint = printerJob.printDialog();
if (doPrint) {
try {
printerJob.print();
} catch (PrinterException exception) {
System.err.println("Printing error: " + exception);
}
}
}
public void conexao(){
ConectaBanco banco = new ConectaBanco();
con = banco.Conectar("Correspondencias");
}
public int print(Graphics g, PageFormat format, int pageIndex) {
Graphics2D g2d = (Graphics2D) g;
g2d.translate(format.getImageableX(), format.getImageableY());
g2d.setPaint(Color.black);
Point2D.Float pen = new Point2D.Float();
AttributedCharacterIterator charIterator = mStyledText.getIterator();
LineBreakMeasurer measurer = new LineBreakMeasurer(charIterator, g2d.getFontRenderContext());
float wrappingWidth = (float) format.getImageableWidth();
while (measurer.getPosition() < charIterator.getEndIndex()) {
TextLayout layout = measurer.nextLayout(wrappingWidth);
pen.y += layout.getAscent();
float dx = layout.isLeftToRight()? 0 : (wrappingWidth - layout.getAdvance());
layout.draw(g2d, pen.x + dx, pen.y);
pen.y += layout.getDescent() + layout.getLeading();
}
return Printable.PAGE_EXISTS;
}
}
SEGUNDO ARQUIVO*******
package jabor.impressao.guias;
import java.sql.;
import javax.swing.;
/**
-
@author Danilo de Melo Santos
*/
public class ImprimirBuscaUltimaGuia {
private ResultSet rsUltimaGuia = null;
private Statement stUltimaGuia = null;private ResultSet rsDocs = null;
private Statement stDocs = null;private String numUltimaGuia;
private String dataUltimaGuia;
public static String cabecalho = “”;
public static String stringImpressao = “”;ImprimirBuscaUltimaGuia(Connection con){
try {
stUltimaGuia = con.createStatement();
rsUltimaGuia = stUltimaGuia.executeQuery(“SELECT * FROM Guias”);
while (rsUltimaGuia.next()){
numUltimaGuia = rsUltimaGuia.getString(1);
dataUltimaGuia = rsUltimaGuia.getString(2);
}cabecalho = "Guia nº " + numUltimaGuia + " datada de " + dataUltimaGuia; stDocs = con.createStatement(); rsDocs = stDocs.executeQuery("SELECT * FROM CadastroDocumentos WHERE NumGuia = '" + numUltimaGuia + "' "); while (rsDocs.next()){ stringImpressao += rsDocs.getString(3); stringImpressao += "\n"; } }catch (SQLException e){ JOptionPane.showMessageDialog(null,e.getMessage()); }
}
}
valeuuuuuuuuuuuuuuuuuuuuuuuuu