0
我有一個實現Printable的類。我試圖以某種方式從文本字段獲取值到打印方法,但似乎無法解決如何做到這一點。將參數傳遞給已實現的方法java
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)
沒能得到它的工作方式,但使它與全局變量的工作,所以它是所有好的:) – user1999648 2013-04-11 14:27:45
[避免使用全局變量(http://c2.com/cgi/wiki?GlobalVariablesAreBad)。在這種情況下,我認爲不需要全局變量。如果你添加你的代碼,我會看看我是否可以替換全局變量:)。 – Eich 2013-04-11 14:35:07
我在這裏發佈了代碼,在此先感謝:http://pastie.org/private/dtntiqs72tz5lrcnxtm8yw – user1999648 2013-04-11 14:54:00