begin process at 2010 02 10 07:56:51
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Java

 > 

Archives

 > 

Au secours

 > 

Impression du contenu d'un JTextArea sur plusieurs pages


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Impression du contenu d'un JTextArea sur plusieurs pages

vendredi 21 mai 2004 à 09:28:28 | Impression du contenu d'un JTextArea sur plusieurs pages

criche

Voici un programme qui me permet d'imprimer le contenu d'un JtextArea.
Il est composé du programme essaiJtextArea.java, qui appelle la classe JTextAreaImprimer.java
Cela fonctionne correctement, sauf que cela n'imprime qu'une seule page.
Je voudrais pouvoir imprimer sur plusieurs pages si le texte dans le JtextArea est long.

essaiJtextArea.java :





import java.awt.*;
import javax.swing.*;
import java.awt.print.*;
import javax.swing.*;
import java.awt.event.*;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;

public class essaiJtextArea{;


static public JTextArea JTextArea1 = new JTextArea(10,30);//JTextField("texte",N. de lignes,N. de colonnes)

static public JTextAreaImprimer JTextArea2 = new JTextAreaImprimer();//JTextField("texte",N. de lignes,N. de colonnes)

static public JScrollPane TreeScrol = new JScrollPane(JTextArea1);//englobe le JTextArea dans un panneau déroulant.

static public JButton button1 = new JButton("Print");

static public String texteimpression = new String();


public static void main (String args[]){ //début de la méthode main()


//Initialisation d'une Fenêtre d'application JFrame(Barre de titre)
JFrame fenetre = new JFrame ("Identification");

Container panneau = fenetre.getContentPane();

panneau.setLayout (new FlowLayout (FlowLayout.LEFT, 10, 10));

JTextArea1.setText("Ceci est un essai d'écriture dans un JTextArea. Normalement le JTextArea est configuré pour faire un retour automatique à la ligne, sans tronquer les mots, et en intégrant un panneau déroulant si nécessaire.Ceci est un essai d'écriture dans un JTextArea. Normalement le JTextArea est configuré pour faire un retour automatique à la ligne, sans tronquer les mots, et en intégrant un panneau déroulant si nécessaireCeci est un essai d'écriture dans un JTextArea. Normalement le JTextArea est configuré pour faire un retour automatique à la ligne, sans tronquer les mots, et en intégrant un panneau déroulant si nécessaire");
JTextArea1.setLineWrap(true);//Passage "à la ligne" du texte automatiquement du JTextArea
JTextArea1.setWrapStyleWord(true);//Pasage "à la ligne" en gardant les mots entiers


JTextArea2.setLineWrap(true);//Passage "à la ligne" du texte automatiquement du JTextArea
JTextArea2.setWrapStyleWord(true);//Pasage "à la ligne" en gardant les mots entiers
JTextArea2.setPreferredSize(new Dimension(400,500));


panneau.add (TreeScrol);

panneau.add (button1);

fenetre.pack();

fenetre.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

fenetre.show();

button1.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent a) {

texteimpression = "FaqSupport\n\n\n";

texteimpression = texteimpression + JTextArea1.getText();

JTextArea2.setText(texteimpression);

JOptionPane.showMessageDialog(null,JTextArea2,"Vous avez demandé l'impression suivante :",JOptionPane.INFORMATION_MESSAGE);

JTextArea2.ImprimerJTextArea();
}
});



}//fin de main
}//fin de classe]



JTextAreaImprimer.java :



import java.awt.*;
import java.awt.event.*;
import java.awt.print.*;
import javax.swing.*;

public class JTextAreaImprimer extends JTextArea implements Printable {





public void ImprimerJTextArea() {
PrinterJob printJob = PrinterJob.getPrinterJob();
printJob.setPrintable(this);

if (printJob.printDialog()) {
try { printJob.print(); }
catch(Exception PrinterExeception) { }
}
}


public int print(Graphics g, PageFormat pf, int pi) throws PrinterException {
if (pi >= 1) {
return Printable.NO_SUCH_PAGE;
}
g.translate(100, 100);
Font f = new Font("Monospaced",Font.PLAIN,12);
g.setFont (f);
paint (g);
return Printable.PAGE_EXISTS;
}

}//fin de classe






Criche


Cette discussion est classée dans : java, public, import, awt, jtextarea


Répondre à ce message

Sujets en rapport avec ce message

Gros pb avec JApplet et JPanel [ par jtmarin ] Help, J'ai un gros pb que je ne comprend pas du tout avec JApplet.En gros, si j'ajoute le JPanel au moment de la méthode init(), pas de problème mais JApplet et JPanel [ par jtmarin ] Help, J'ai un gros pb que je ne comprend pas du tout avec JApplet.En gros, si j'ajoute le JPanel au moment de la méthode init(), pas de problème mais récuperer touche clavier KeyListener [ par ivanohe5 ] salut tlm Mon but est de récuperer les touche clavier tapées par l'utilisateur aprés que mon prog soit lancé ma source: import java.awt.Component; Creation d'un composant [ par lagaman ] bonjour,Dans l'optique de réutiliser du codes je voudrai créer un composant.Mon but et de créer un composant qui envoie un event : actionevent.Ci dess Problème avec getImage() [ par Akamaru88 ] Bonjour,J'ai beaucoup hésité avant de poster ce message mais je pense avoir cherché partout (y compris sur http://java.sun.com/javase/6/docs/api/ ) et Problème dans la programmation de l'impression d'une jFrame [ par beberto56 ] Bonjour,je suis dans la dernière phase de la programmation de mon formulaire et je suis en plein dans la programmation de ma classe d'impression hors java [ par nanouwa ] salut à tout le monde j'ai un code avec lequel je veux quand on met le flèche de souris sur une partie d'une image une information s'affiche ce qu'on java [ par hanano02 ] merci d'avance. je vous souhaite de vous m'aider pour corrige ce probleme c'est de faire associer les evenements aux bouton lancer et arrter un Thread Bouton rond [ par momjunior ] Bonjour, J'ai la classe suivante qui permet de créer un bouton rond avec une image au-dessus: [code=java]import java.awt.Color; import java.awt.Grad les packages [ par hanen8989 ] [color=purple]Salut mes amis[/color], j'ai besoin d'utiliser dans un code java les imports suivantes: [color=green]import javax.swing.JPanel; import


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,718 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales