Print

1 resposta
K

Preciso com alguma urgencia de um código que pege o conteudo de uma textArea e jogue na impressora , já visitei o site da sun mas não obtive muito sucesso

Obrigado.

1 Resposta

J

Oi

kestering, de uma olhada no código abaixo:

import java.awt.GraphicsConfiguration;
import java.awt.HeadlessException;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JFrame;

public class UIImprimir extends JFrame implements ActionListener {
	private javax.swing.JPanel jContentPane = null;
	private javax.swing.JLabel jLabel = null;


	private javax.swing.JTextArea jTextArea = null;
	private javax.swing.JButton jButton = null;
	private javax.swing.JButton jButton1 = null;
	public UIImprimir() {
		super();
		// TODO Auto-generated constructor stub
		initialize();
	}

	/**
	 * @param arg0
	 */
	public UIImprimir(GraphicsConfiguration arg0) {
		super(arg0);
		// TODO Auto-generated constructor stub
		initialize();
	}

	/**
	 * @param arg0
	 * @throws java.awt.HeadlessException
	 */
	public UIImprimir(String arg0) throws HeadlessException {
		super(arg0);
		// TODO Auto-generated constructor stub
		initialize();
	}

	/**
	 * @param arg0
	 * @param arg1
	 */
	public UIImprimir(String arg0, GraphicsConfiguration arg1) {
		super(arg0, arg1);
		// TODO Auto-generated constructor stub
		initialize();
	}

	public static void main(String[] args) {
		new UIImprimir();
	}
	/**
	 * This method initializes this
	 * 
	 * @return void
	 */
	private void initialize() {
		this.setSize(300, 230);
		this.setContentPane(getJContentPane());
		this.setDefaultCloseOperation(javax.swing.JFrame.EXIT_ON_CLOSE);
		this.setLocation(100, 100);
		this.setTitle("Testar Impressão");
		this.show();
	}
	/**
	 * This method initializes jContentPane
	 * 
	 * @return javax.swing.JPanel
	 */
	private javax.swing.JPanel getJContentPane() {
		if (jContentPane == null) {
			jContentPane = new javax.swing.JPanel();
			jContentPane.setLayout(null);
			jContentPane.add(getJLabel(), null);
			jContentPane.add(getJTextArea(), null);
			jContentPane.add(getJButton(), null);
			jContentPane.add(getJButton1(), null);
			jContentPane.setBorder(new javax.swing.border.SoftBevelBorder(javax.swing.border.SoftBevelBorder.RAISED));
		}
		return jContentPane;
	}
	/**
	 * This method initializes jLabel
	 * 
	 * @return javax.swing.JLabel
	 */
	private javax.swing.JLabel getJLabel() {
		if(jLabel == null) {
			jLabel = new javax.swing.JLabel();
			jLabel.setSize(166, 20);
			jLabel.setText("Digite o texto a ser impresso");
			jLabel.setLocation(10, 10);
		}
		return jLabel;
	}
	/**
	 * This method initializes jTextArea
	 * 
	 * @return javax.swing.JTextArea
	 */
	private javax.swing.JTextArea getJTextArea() {
		if(jTextArea == null) {
			jTextArea = new javax.swing.JTextArea();
			jTextArea.setSize(270, 110);
			jTextArea.setLocation(10, 50);
		}
		return jTextArea;
	}
	/**
	 * This method initializes jButton
	 * 
	 * @return javax.swing.JButton
	 */
	private javax.swing.JButton getJButton() {
		if(jButton == null) {
			jButton = new javax.swing.JButton();
			jButton.setSize(80, 20);
			jButton.setLocation(110, 170);
			jButton.setPreferredSize(new java.awt.Dimension(80,20));
			jButton.addActionListener(this);
			jButton.setText("OK");
		}
		return jButton;
	}
	/**
	 * This method initializes jButton1
	 * 
	 * @return javax.swing.JButton
	 */
	private javax.swing.JButton getJButton1() {
		if(jButton1 == null) {
			jButton1 = new javax.swing.JButton();
			jButton1.setSize(80, 20);
			jButton1.setLocation(200, 170);
			jButton1.setPreferredSize(new java.awt.Dimension(80,20));
			jButton1.addActionListener(this);
			jButton1.setText("Sair");
		}
		return jButton1;
	}
	
	public void actionPerformed(ActionEvent e) {
		if(e.getSource() == jButton) {
			String conteudoTextArea = jTextArea.getText().toString();
			new Imprimir(conteudoTextArea);
		}
		if(e.getSource() == jButton1)
			System.exit(0);		
	}
	
}  //  @jve:visual-info  decl-index=0 visual-constraint="135,57"
import java.awt.*;

/** CLASSE Imprimir
 * ------------------------------------
 * Projeto..: Tutoriais
 * Descrição: Classe que recebe como argumento uma String para impressão.
 * Direitos.: Paulo César Machado Jeveaux (c) 02/02/2004
 * Autor....: Paulo César Machado Jeveaux - [email removido]
 * @autor...: Paulo César Machado Jeveaux
 */
public class Imprimir { 

	public Imprimir(String imprimir) {

		Frame f = new Frame(); 
		f.pack(); 

		Toolkit tk = f.getToolkit(); 

		PrintJob pj = tk.getPrintJob(f, "print1", null); 

		if (pj!=null) { 
			Graphics g = pj.getGraphics(); 
			
			g.drawString("Conteúdo recebido para impressão:",20,20);
			
			g.drawString(imprimir,40,40);
			
			g.dispose(); 
			pj.end();
		} 

		f.dispose(); 
	}
}

T+

Criado 1 de fevereiro de 2004
Ultima resposta 3 de fev. de 2004
Respostas 1
Participantes 2