J'ai une fenetre qui s'ouvre avec plusieurs JTextField et j'aimerai imprimer tous le contenu des différents JTextField.
Est ce que vous pouriez me dire comment il faut faire?
Merci.
J'ai une fenetre qui s'ouvre avec plusieurs JTextField et j'aimerai imprimer tous le contenu des différents JTextField.
Est ce que vous pouriez me dire comment il faut faire?
Merci.
Tiens une petite classe qui peut faire ce que tu veut faire :
Et voilà comment l'utiliser :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39 package src; import java.awt.*; import java.awt.print.*; /** * Classe qui va s'occuper d'imprimer un message * @author Wichtounet * */ public class Print implements Printable{ String toPrint[]; /** * Constructeur de la classe * @param toPrint Chaine de caractères à imprimer */ public Print(String toPrint){ this.toPrint = toPrint.split("\n"); } /** * Fonction qui imprime le message */ public int print(Graphics g, PageFormat pf, int indexPage){ int start = 100; if(indexPage > 0) return NO_SUCH_PAGE; Graphics2D g2 = (Graphics2D)g; g2.setFont(new Font("Times New Roman", Font.PLAIN, 12)); for(int i = 0;i < toPrint.length;i++){ g2.drawString(toPrint[i],start,25); if(i == 2){start += 30;} else{start += 20;} } return PAGE_EXISTS; } }
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 PrinterJob tache = PrinterJob.getPrinterJob(); try {tache.setPrintable(new Print("A la place de ce message, tu lui passes le texte de tous tes JTextField séparés par \n"); } catch (IOException e1) {e1.printStackTrace(); } catch (MessagingException e1) {e1.printStackTrace();} try { tache.print(); } catch(Exception e) { System.out.println("impossible d’imprimer");}
je viens d'essayer mais sa ne marche pas.
Il existe pas une autre methode?
merci
Qu'est ce qui ne marche pas, j'emploie cette classe ainsi chez moi...
Je sais pas trop s'il existe une autre manière, sinon, tu peut aussi mettre le texte dans tout tes JTextField dans un autre composant temporaire et ensuite employer la méthode print de swing
lorsque je compil, il me dit :
cannot access Print
bad class file : .\Print.java
file does not contain class Print
Dans
il faut que je les mettes comment mes JTextField?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 try {tache.setPrintable(new Print("A la place de ce message, tu lui passes le texte de tous tes JTextField séparés par \n");
Il faut que je fasse un JTextField.getText?
ou j'ai juste a mettre mes noms de JTextField?
Je vais rééssayer pour voir.
Merci.
Tu as bien ajouté la classe Print à ton projet ?
Oui il faut faire des getText sur chacun de tes TextField et ensuite tu met s tous le texte en paramètre de la classe Print
Partager