Accueil > Forum > > > > Impression du contenu d'un JTextArea sur plusieurs pages
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
gestion des processus legere en java [ par kaled2010 ]
bonjour dans cette exemple de code je cherche d'augmenter le nombre de processus poisson svp aidez moi de faire ceci merci d'avance: import java.
Canvas et le scrollbar [ par youssefali ]
Bonjour à tous, J'ai crée un classe qui hérite d'un canvas dans lequel je vais afficher tous les images qui existe dans un dossier particulier Le prob
Livres en rapport
|
Derniers Blogs
GESTION D'EXCEPTION AVEC LES TASKSGESTION D'EXCEPTION AVEC LES TASKS par richardc
Nous avons vu dans un précédent article comment utiliser Task pour effectuer des opérations dans un autre thread.
Malheureusement, comme tout le monde n'est pas parfait, il se peut que cette exécution se passe mal et qu'une exception se produise.
La...
Cliquez pour lire la suite de l'article par richardc DéMARRONS AVEC LES TASKSDéMARRONS AVEC LES TASKS par richardc
Que vous le vouliez ou non, le développement multi-tâche est maintenant une obligation pour toute nouvelle application. Il est donc vital d'en comprendre les mécanismes et de s'y mettre le plus tôt possible.
En attendant le .NET Framework 4.5 avec le...
Cliquez pour lire la suite de l'article par richardc SLIDE & DéMO TECHDAYS 2012 - FAST & FURIOUS XAML APPSSLIDE & DéMO TECHDAYS 2012 - FAST & FURIOUS XAML APPS par Vko
Retrouvez les slides et les démo de ma session Fast & Furious XAML Apps. A ceux qui se posent la question : "est-ce que le code de la DataGrid est disponible?", je vous répondrais "pas encore". Je vais mettre en place un projet codeplex pour part...
Cliquez pour lire la suite de l'article par Vko XNA IS DEAD!XNA IS DEAD! par richardc
Depuis la semaine dernière (et grâce aux TechDays 2012), je me penche activement sur la nouvelle version de Windows, aka Windows 8. Vous me direz, il était temps puisque la première preview date de Septembre dernier.
OK. Remarquez, on n'en est qu'aux...
Cliquez pour lire la suite de l'article par richardc TECHDAYS PARIS 2012 : WINDOWS SERVER "8" QUOI DE 9 !TECHDAYS PARIS 2012 : WINDOWS SERVER "8" QUOI DE 9 ! par ROMELARD Fabrice
Speakers: Fabrice Meillon et Stanislas Quastana Cette session est basée entièrement sur celle donnée lors de la BUILD cet hiver. Il n'y a pas d'ajout d'information en rapport avec cet évènement passé. Windows 8 Server sera intégralem...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice
Forum
RE : COURRE : COUR par barhoum1111
Cliquez pour lire la suite par barhoum1111 RE : COURRE : COUR par Julien39
Cliquez pour lire la suite par Julien39
Logiciels
DocTranslate (V3.1.0.0)DOCTRANSLATE (V3.1.0.0)DocTranslate est un traducteur de document Microsoft Word, PowerPoint et Excel. Il permet d'autom... Cliquez pour télécharger DocTranslate Tribler (2012)TRIBLER (2012)Tribler est un client pair à pair (P2P/Peer-to-Peer) open source avec la capacité de regarder des... Cliquez pour télécharger Tribler OneSwarm (2012)ONESWARM (2012)Le peer-to-peer qui protège votre vie privée, c'est OneSwarm.
Ce logiciel de peer-to-peer crypté... Cliquez pour télécharger OneSwarm PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO Academy System (17.2.1.0)ACADEMY SYSTEM (17.2.1.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System
|