Bonjour,
J'ai un petit soucis avec un tableau, et plus précisément avec un tableau à double entrée que j'ai collé dans un JScrollpane auquel j'ai ajouté un row header.
Donc mon soucis c'est que je voudrais pouvoir, d'une part visualiser le tableau dans un JScrollpane (ça, ça marche). Mais je voudrais aussi pouvoir imprimer la totalité du tableau (avec row et colmun header) et la ça ne marche plus
J'ai essayé beaucoup de solutions en rapport avec la fonction print() de JTable, aucune ne marche... (en fait, des fois j'ai juste le cadre et rien dedans et des fois ça s'affiche...)
Donc je veux implémenter l'interface Printable sur un objet héritant de JScrollPane (et qui affiche le tableau à l'écran tout bien comme il faut), mais la ça bloque aussi... il ne m'affiche que la partie visible du tableau lorsqu'il y a des ascenseurs...
J'aimerais donc pouvoir récupérer la partie cachée dans le JScrollPane pour avoir la totalité des lignes/colonnes lors de l'impression
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 public int print(Graphics g, PageFormat pageFormat, int pageIndex) throws PrinterException { if (pageIndex!=0) { return NO_SUCH_PAGE; } Dimension dim = getSize(); double scaleX = pageFormat.getImageableWidth() / dim.width; double scaleY = pageFormat.getImageableHeight() / dim.height; double scale = Math.min(scaleX, scaleY); Graphics2D g2D = (Graphics2D)g; g2D.translate(pageFormat.getImageableX(), pageFormat.getImageableY()); g2D.scale(scale, scale); this.print(g); return PAGE_EXISTS; }
Partager