2012-04-19 66 views
2

我想在JTable的頂部打印一個特定的文本,但不是在第一頁上的每個頁面(而不是頁眉)和/或文本在文本的末尾,但又不是作爲每頁的頁腳,而是僅在JTable內容結束之後。帶有前綴文本的JTable打印(不是頁眉/頁腳)

這怎麼可能? 謝謝!

+1

你的意思是你只是想在包含你的表格的框架上下放置一個標籤?你真的需要澄清你在找什麼。 – Charles 2012-04-19 19:04:23

+0

是的,在桌子上方或下方的預定義文字不是在桌面上,而是在用戶希望打印時在桌面上打印。 – Vagelism 2012-04-19 19:09:13

+0

聽起來就像你只需要在桌子上面和下面添加一個JLabel。 – Charles 2012-04-19 19:10:41

回答

2

JTable有一個print()的版本,你可以使用一個例子。看看它的源代碼。

public boolean print(PrintMode printMode, MessageFormat headerFormat, MessageFormat footerFormat, boolean showPrintDialog, PrintRequestAttributeSet attr, boolean interactive, PrintService service)

還看getPrintable(...)方法JTable中,和javax.swing.TablePrintable類。你將不得不做一些自定義的打印代碼,但TablePrintable是一個好的開始。有一個print()方法需要一個pageIndex,並且可以做類似的事情,但不要在每個頁面上打印頁眉和頁腳。

+0

我使用jtable的打印方法來打印我的結果,效果很好。現在,他們只需要在這些resauls之前和之後添加一些文本,但不是在每個頁面(如頁腳或頁眉)中。僅在開始和結束時。在任何教程中是否有示例代碼?謝謝! – Vagelism 2012-04-19 20:08:27

+1

當我使用它時,我沒有看到任何好的東西。真的JTable.print()和[TablePrintable]的代碼(http://grepcode.com/file/repository.grepcode.com/java/root/jdk/openjdk/6-b14/javax/swing/TablePrintable.java# TablePrintable.print%28java.awt.Graphics%2Cjava.awt.print.PageFormat%2Cint%29)是最好的例子。它會幫助你理解如何去做你想做的事。 – Jim 2012-04-19 20:19:16