En que momento es que le pasamos los argumentos al metodo print de la clase printerJob
Publicado por Josue (1 intervención) el 23/11/2017 16:35:14
Mencionar que lo que quiero es ENTENDER como funciona el paso de argumentos.
Este codigo lo uso para imprimir un ticket (en una impresora termica con un ancho de 80mm) y funciona correctamente no tiene errores.
Los dos codigos que muestro a continuacion estan en clases separadas (archivos diferentes) por eso es que pregunto cose pasan los argumentos.
Mi pregunta es: En que momento es que se le pasan los argumentos al metodo print de la clase printerJob.
En la linea:
se utiliza el metodo print pero no le pasamos ningun argumento. En otra clase que implementa printable es donde se tiene el metodo print que es el que llamamos en la linea de codigo que les mostre arriba, y donde se ve que es necesario pasarle argumentos pero no lo hacemos, por que como se mustra solo ponemos " pj.print(); " sin argumentos.
La clase Impresora es donde tengo el metodo print y es como se muestra a continuacion:
En que momento se le pasan los argumentos al metodo:
Este codigo lo uso para imprimir un ticket (en una impresora termica con un ancho de 80mm) y funciona correctamente no tiene errores.
Los dos codigos que muestro a continuacion estan en clases separadas (archivos diferentes) por eso es que pregunto cose pasan los argumentos.
Mi pregunta es: En que momento es que se le pasan los argumentos al metodo print de la clase printerJob.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
printerJob pj = PrinterJob.getPrinterJob();
PageFormat pf = pj.defaultPage();
Paper paper = new Paper();
paper.setImageableArea(10, 0, 200, 100);
pf.setPaper(paper);
pj.setPrintable(new Impresora(), pf);
try {
pj.print();
} catch (PrinterException e) {
System.out.println(e);
}
En la linea:
1
pj.print();
se utiliza el metodo print pero no le pasamos ningun argumento. En otra clase que implementa printable es donde se tiene el metodo print que es el que llamamos en la linea de codigo que les mostre arriba, y donde se ve que es necesario pasarle argumentos pero no lo hacemos, por que como se mustra solo ponemos " pj.print(); " sin argumentos.
La clase Impresora es donde tengo el metodo print y es como se muestra a continuacion:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
class Impresora implements Printable
{
public int print(Graphics g, PageFormat pf, int pageIndex) {
if (pageIndex != 0)
return NO_SUCH_PAGE;
Date fecha = new Date();
Graphics2D g2 = (Graphics2D) g;
g2.setFont(new Font("Serif", Font.PLAIN, 10));
g2.setPaint(Color.black);
g2.drawString("Fecha "+fecha.getDate()+"-"+(fecha.getMonth()+1)+"-"+(fecha.getYear()+1900)+" Hora "+fecha.getHours()+":"+fecha.getMinutes(), 10, 20);
Rectangle2D outline = new Rectangle2D.Double(pf.getImageableX(), pf.getImageableY(), pf.getImageableWidth(), pf.getImageableHeight());
g2.draw(outline);
return PAGE_EXISTS;
}
}
En que momento se le pasan los argumentos al metodo:
1
public int print(Graphics g, PageFormat pf, int pageIndex)
Valora esta pregunta


0