要纯JAVA实现,其他语言我不会,出问题了就死了。我做的是一个POS终端装机申请表的一个Frame,界面和其他功能都已经实现了,现在就只剩下一个“打印”按钮的功能实现。
在界面上有很多的JLable(随后紧跟JTextField)--2者对应--JTextField,几个JCheckBox。我现在能连接到打印机,但是打印的内容、数量和格式什么的都还不会实现。打印的要求:
(1)(前半部分)JLabel的内容是纸张原本就已经有了的,而界面上的JTextField中填入的内容要求打印到纸张对应处的JLabel后面。
(2)(后半部分)全是固定的内容,但是格式很多。可以认为全是JLabel来处理。
请教高手这个问题怎么处理?我上网搜了好多,看到一段很好的代码,但是看了后自己的还是不会实现。
这是那个网址:http://www.ibm.com/developerworks/cn/java/l-javaprint/index.html
在界面上有很多的JLable(随后紧跟JTextField)--2者对应--JTextField,几个JCheckBox。我现在能连接到打印机,但是打印的内容、数量和格式什么的都还不会实现。打印的要求:
(1)(前半部分)JLabel的内容是纸张原本就已经有了的,而界面上的JTextField中填入的内容要求打印到纸张对应处的JLabel后面。
(2)(后半部分)全是固定的内容,但是格式很多。可以认为全是JLabel来处理。
请教高手这个问题怎么处理?我上网搜了好多,看到一段很好的代码,但是看了后自己的还是不会实现。
这是那个网址:http://www.ibm.com/developerworks/cn/java/l-javaprint/index.html
解决方案 »
- 寻求博客源代码,页面要jsp的~! 在线等......
- JFrame对象被disposal后调用setVisible(ture)怎么会有能显示,怎样才能彻底释放JFrame的资源
- 在JTable中paint的问题.
- 7000K Java高手你愿意来吗
- 在java中用jlable,setIcon来做背景图,但背景图遮住了按钮等别的控件。有解决办法者给100分!!
- 如何把Graphics2D里的的东西复制到Graphics里面?
- 一个很小的问题,大家指点一下
- 为什么???????????各位帮帮一个菜问题
- 请问哪有jbuilder5.0的汉化包?
- 求教!能帮就帮一下!
- dtree中checkbox问题
- 求odf4j.jar包
使用说明、软件下载等见网址:
http://blog.csdn.net/jemlee2002/archive/2004/10/05/125107.aspx
具体的,在java程序中如果调用,通过以下几句就够了:
plDataSource pls = new plDataSource(); //plDataSource 类用来获取需要显示的数据
Map<String,String> parameters = new HashMap<String, String>();
reportFile = new File(context.getRealPath("/A1/B1/jasper/Plreport.jasper")); //指定jasper文件路径
parameters = pls.getReportMap_private(request); //获取数据
JasperReport jasperReport = (JasperReport) JRLoader.loadObject(reportFile.getPath());
jasperPrint = JasperFillManager.fillReport(jasperReport,parameters, pls);
哪位高手帮我看看代码哪里错了:以下是打印用的主要代码
//打印的按钮
button.addActionListener(new ActionListener() {
public void actionPerformed(final ActionEvent e) {
PrinterJob job = PrinterJob.getPrinterJob();
PageFormat pf = job.defaultPage();
job.setPrintable(PosApplyTable.this,pf);
job.setCopies(1);
try {
job.print();
} catch (PrinterException e1) {
job.cancel();
e1.printStackTrace();
}
}public int print(Graphics g, PageFormat pf, int page)throws PrinterException {
Graphics2D g2 = (Graphics2D)g;
g.setColor(Color.GREEN);
PAGES++;
if(PAGES>1){
return Printable.NO_SUCH_PAGE;
} else{
drawCurrentPageText(g2, pf, page);
return Printable.PAGE_EXISTS;
}
}
private void drawCurrentPageText(Graphics2D g2, PageFormat pf,int page) {
g2.drawString(outerCode.getText(),133, 24);
g2.drawString(innerCode.getText(),400, 28);
g2.drawString(shName.getText(),133 , 52);
g2.drawString(shortName.getText(), 400, 52);
g2.drawString(loginAddress.getText(), 133, 76);
g2.drawString(installAddress.getText(), 133, 100);
g2.drawString(stock.getText(), 133, 124);
g2.drawString(userName.getText(), 307, 124);
g2.drawString(phone.getText(), 454, 124);
g2.drawString(area.getText(), 133, 148);
g2.drawString(idCode.getText(), 400, 148);
g2.drawString(license.getText(), 133, 172);
g2.drawString(bankName.getText(), 400, 172);
g2.drawString(registerCode.getText(), 133, 196);
g2.drawString(account.getText(), 400, 196);
g2.drawString(openName.getText(), 133, 220); }