2012-04-19 8 views
2

JTableの上部に特定のテキストを印刷したいが、最初のページやテキストのすべてのページ(ヘッダーではない)には印刷したくないテキストの終わりではなく、各ページのフッターとしてではなく、JTableコンテンツの終わりの後でなければなりません。先頭にプレフィックステキストを付けたJTable印刷

これはどのように可能ですか? ありがとうございました!

+1

テーブルを含むフレームの上下にラベルを貼り付けたいだけですか?あなたは本当にあなたが探しているものを明確にする必要があります。 – Charles

+0

はい、テーブル上ではなく、テーブル上ではなく、テーブルの上および/または下にある定義済みのテキストですが、ユーザがそれを印刷したいときは常にテーブルの印刷時に使用します。 – Vagelism

+0

テーブルの上と下にJLabelを追加するだけでいいと思います。 – Charles

答えて

2

JTableにはprint()のバージョンがありますが、おそらく例を使用できます。それのソースコードを見てみましょう。

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

もJTableの中getPrintable(...)方法、およびjavax.swing.TablePrintableクラスを見てください。カスタム印刷コードを実行する必要がありますが、TablePrintableは良いスタートです。 pageIndexをとるprint()メソッドがあります。そのようなことができますが、すべてのページにヘッダーとフッターを印刷しないでください。

+0

私はjtableのprintメソッドを使用して結果を出力し、うまくいきます。今私が必要なのは、これらのレスサールの前後にテキストを追加するだけですが、フッターやヘッダーのようなすべてのページでは使用できません。開始時と終了時のみ。チュートリアルにサンプルコードはありますか?ありがとうございました! – Vagelism

+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

関連する問題