Java - Imprimir JFrame y dibujos creados en ejecución

 
Vista:

Imprimir JFrame y dibujos creados en ejecución

Publicado por Taiwán (1 intervención) el 05/07/2023 21:59:18
Hola, espero ser explicito y me puedan ayudar.
Tengo un JFrame con botones campos de texto y jPanel. Dentro del Jpanel dibujo una gráfica con drawLine().
Hasta ahí todo bien, el problema es que necesito imprimir todo el frame y solo me imprime lo que hice en tiempo de diseño, o sea los botones, campos de texto y el jPanel y no imprime la gráfica que
fue hecha en tiempo de ejecución de acuerdo al registro seleccionado de una base de datos.

Para imprimir el JPanel uso un botón:

private void ImprimirActionPerformed(java.awt.event.ActionEvent evt) {
//Grafica.setVisible(false);
try {
//Grafica= null;
PrinterJob job = PrinterJob.getPrinterJob();
job.setPrintable(this);
job.printDialog();
job.print();
} catch (PrinterException ex) {
Logger.getLogger(PrintMe.class.getName()).log(Level.SEVERE, null, ex);
}

que usa al método:

public int print(Graphics graphics, PageFormat pageFormat, int pageIndex) throws PrinterException {

if (pageIndex > 0) { /* We have only one page, and 'page' is zero-based */
return NO_SUCH_PAGE;
}

Graphics2D g2d = (Graphics2D)graphics;
g2d.translate(pageFormat.getImageableX(), pageFormat.getImageableY());

//jPanel1.printAll(graphics);
this.printAll(graphics);

return PAGE_EXISTS;

}

Gracias de antemano por cualquier ayuda que me puedan proporcionar.
Saludos.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder