2013-03-17 72 views
2

我有一个JPanel,与像按钮,标签,表中的一些组件等添加打印按钮的JPanel

我想要做的是增加一个功能(一个JButton),即点击该按钮指导我打印整个面板以及标签和组件。 请帮忙。

+3

http://stackoverflow.com/questions/750310/how-can-i-print-a - 单jpanels-内容 – bbalchev 2013-03-17 23:06:30

回答

0

只是要调用此代码的JButton:

public void printComponent() { 

    PrinterJob pj = PrinterJob.getPrinterJob(); 
    pj.setJobName(" Print Component "); 

    pj.setPrintable (new Printable() {  
    public int print(Graphics pg, PageFormat pf, int pageNum) { 
     if (pageNum > 0) return Printable.NO_SUCH_PAGE; 

     Graphics2D g2 = (Graphics2D) pg; 
     g2.translate(pf.getImageableX(), pf.getImageableY()); 
     componenet_name.paint(g2); 
     return Printable.PAGE_EXISTS; 
    } 
    }); 

    if (pj.printDialog() == false) return; 

    try { 
    pj.print(); 
    } catch (PrinterException ex) { 
    // handle exception 
    } 
} 

(摘自:How can I print a single JPanel's contents?