文件管理 · 2022年7月29日

swing文件打印|Java如何调用系统打印机打印文件

⑴ java swing 里用jasperprint怎么能使用多个模板打印并预览

一个父报表里嵌套多个子报表

⑵ 请问java swing程序怎么实现JTable的打印预览和打印注意 打印前需要类似于Excel的打印预览

请问楼主 你解决了吗 我也需要这个

⑶ Java如何调用系统打印机打印文件

具体步骤如下:import java.io.File; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; import javax.print.Doc; import javax.print.DocFlavor; import javax.print.DocPrintJob; import javax.print.PrintService; import javax.print.PrintServiceLookup; import javax.print.SimpleDoc; import javax.print.attribute.DocAttributeSet; import javax.print.attribute.HashDocAttributeSet; import javax.print.attribute.HashPrintRequestAttributeSet; import javax.swing.JFileChooser; public class PrintDemo { public static void main(String[] args) { JFileChooser fileChooser = new JFileChooser(); // 创建打印作业 File file = new File("f:/111.txt"); // 获取选择的文件 // 构建打印请求属性集 HashPrintRequestAttributeSet pras = new HashPrintRequestAttributeSet(); // 设置打印格式,因为未确定类型,所以选择autosense DocFlavor flavor = DocFlavor.INPUT_STREAM.AUTOSENSE; // 定位默认的打印服务 PrintService defaultService = PrintServiceLookup.lookupDefaultPrintService(); InputStream fis = null; try { DocPrintJob job = defaultService.createPrintJob(); // 创建打印作业 fis = new FileInputStream(file); // 构造待打印的文件流 DocAttributeSet das = new HashDocAttributeSet(); Doc doc = new SimpleDoc(fis, flavor, das); job.print(doc, pras); } catch (Exception e) { e.printStackTrace(); } finally { if (fis != null) { try { fis.close(); } catch (IOException e) { e.printStackTrace(); } } } } }

⑷ java怎么实现打印文件啊不要打印页面的,谢谢!!! 最好能实现自定义打印内容的。

猪哥解答:我收藏了一份java实现打印的代码,包括从本地选择文件(文本类)打印以及打印预览。源码下载地址在网络文库,你下来之后把源码复制出来就可以直接调试,一共两个类。地址是:http://wenku..com/view/048ae0e8856a561252d36fab.html

⑸ Java Swing打印问题

备份你的源文件,执行以下代码,看看有没问题,我这里没有打印机没法测试:import java.awt.BorderLayout;import java.awt.EventQueue;import java.awt.Graphics;import java.awt.Toolkit;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.awt.print.PageFormat;import java.awt.print.Printable;import java.awt.print.PrinterException;import java.awt.print.PrinterJob;import java.util.Properties;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JPanel;import javax.swing.JScrollPane;import javax.swing.JTable;import javax.swing.border.EmptyBorder;public class Print01{ private static final long serialVersionUID = -5124405479024666344L; private JPanel contentPane; private JTable table; private JFrame f; public static void main(String[] args) { EventQueue.invokeLater(new Runnable() { public void run() { try { Print01 fr = new Print01(); } catch (Exception e) { e.printStackTrace(); } } }); } public Print01() { f=new JFrame(); f.setTitle("\u6253\u5370\u6D4B\u8BD5\u7A97\u53E3"); f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); f.setBounds(100, 100, 450, 300); contentPane = new JPanel(); contentPane.setBorder(new EmptyBorder(5, 5, 5, 5)); contentPane.setLayout(new BorderLayout(0, 0)); f.setContentPane(contentPane); final JPanel panel = new JPanel(); contentPane.add(panel, BorderLayout.CENTER); panel.setLayout(null); JLabel label = new JLabel("New label"); label.setBounds(330, 11, 73, 15); panel.add(label); JButton button = new JButton("New button"); button.setBounds(144, 7, 138, 23); panel.add(button); JButton button_3 = new JButton("\u6253\u5370"); button_3.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { // Toolkit kit = Toolkit.getDefaultToolkit();// Properties props = new Properties();// props.put("awt.print.printer", "rango");// props.put("awt.print.numCopies", "2"); PrinterJob printJob = PrinterJob.getPrinterJob(); PageFormat pageFormat = printJob.defaultPage(); //获取默认打印页面格式 Printable printable=new Printable(){ public int print(Graphics graphics, PageFormat pageFormat, int pageIndex) throws PrinterException { if(pageIndex==1)return Printable.NO_SUCH_PAGE; panel.printAll(graphics); return Printable.PAGE_EXISTS; }}; printJob.setPrintable(printable, pageFormat); //设置打印工作 try { printJob.print(); } catch (PrinterException e1) { System.out.println("错误:"+e1); } } }); button_3.setBounds(340, 36, 93, 39); panel.add(button_3); JButton button_2 = new JButton("New button"); button_2.setBounds(21, 2, 93, 30); panel.add(button_2); JScrollPane scrollPane = new JScrollPane(); scrollPane.setBounds(33, 61, 285, 168); panel.add(scrollPane); table = new JTable(9,5); scrollPane.setViewportView(table);f.setVisible(true); }} 监听器里改成如下就会有打印对话框,我把默认打印页数变成了1,可能还有很多问题,你自己根据实际情况多看看,参考我的博客:http://liuguojie456.blog.163.com/blog/static/12639549200941134025167/ public void actionPerformed(ActionEvent e) { // Toolkit kit = Toolkit.getDefaultToolkit();// Properties props = new Properties();// props.put("awt.print.printer", "rango");// props.put("awt.print.numCopies", "2"); PrinterJob printJob = PrinterJob.getPrinterJob(); PageFormat pageFormat = printJob.defaultPage(); //获取默认打印页面格式 Printable printable=new Printable(){ public int print(Graphics graphics, PageFormat pageFormat, int pageIndex) throws PrinterException { if(pageIndex==1)return Printable.NO_SUCH_PAGE; panel.printAll(graphics); return Printable.PAGE_EXISTS; }}; printJob.setPrintable(printable, pageFormat); //设置打印工作 try { if(printJob.printDialog()){ printJob.print(); } } catch (PrinterException e1) { JOptionPane.showMessageDialog(null, "错误:"+e1); } }

⑹ java程序Swing怎样将两个部件的内容打印在一张纸上,

java.awt.print.PrinterJob 及相关的类的API

⑺ java swing怎么连接到局域网上的打印机

这和swing有啥关系直接在控制面板把那个网络打印机添加进来然后设置成默认打印机

⑻ 高手,如何用swing实现打印一个表格

1.打开编程软件:

如图所示,找到自己的IED,然后双击打开,小编采用的是eclipse软件;

2.配置工程:

我们建立一个工程后,需要往里面添加一个类,方法如下:选中工程,单击鼠标右键,选中“new”,建立一个“class”,然后就可以配置了,具体配置如下图所示;

⑼ java swing jtable 打印+打印预览(求代码)

使用JTABLE做出和打印预览一样的分页效果然后PAINT出来就可以了!

⑽ appication(AWT或SWING)里面有一个文本框,一个按钮 ,点击按钮,将文本框的内容在控制台打印输出。谢谢

import java.awt.BorderLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.JButton;import javax.swing.JTextArea;import javax.swing.WindowConstants;import javax.swing.SwingUtilities;public class OutPutFrame extends javax.swing.JFrame { private JTextArea content; private JButton output; public static void main(String[] args) { OutPutFrame inst = new OutPutFrame(); inst.setLocationRelativeTo(null); inst.setVisible(true); } public OutPutFrame() { super(); initGUI(); } private void initGUI() { setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE); { content = new JTextArea(); getContentPane().add(content, BorderLayout.CENTER); content.setText("这里是内容"); } { output = new JButton(); getContentPane().add(output, BorderLayout.SOUTH); output.setText("输出"); output.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent evt) { System.out.println(content.getText()); } }); } pack(); setSize(400, 300); }}