我有一个实现 Printable 的类。我试图以某种方式从文本字段中获取值到 print 方法中,但似乎无法解决如何做到这一点。
public class TreePrint extends javax.swing.JFrame implements Printable{
然后这是用户选择要打印的项目时的操作:
private void btnPrintActionPerformed(java.awt.event.ActionEvent evt)
{
goPrint();
}
public void goPrint()
{
PrinterJob job = PrinterJob.getPrinterJob();
job.setPrintable(new TreePrint());
// boolean doPrint = job.printDialog();
job.print();
}
@Override
public int print(Graphics g, PageFormat pf, int page) throws PrinterException {
Koks koksSelected = (Koks) combobox_skirne.getSelectedItem();
System.out.println(combobox_skirne.getSelectedItem());
if (page > 0) {
return NO_SUCH_PAGE;
}
System.out.println(koksSelected.getSkirne());
return PAGE_EXISTS;
}
问题是我无法在打印方法中获取所选项目或文本值。我可以在 go print 或 btnPrintActionPerformed 中获取它们,但在 print() 中,它始终显示程序首次运行时存在的选定值。如果需要,我可以发布更多代码,但它很长。我确定这是实施方法的基本问题,但我找不到答案。
这是一个类似(相同?)的问题: Passing Parameters to the print method (JAVA)