2017-01-21 19 views
0

jtableヘッダーフォントサイズを変更しようとしました。しかし、まだできませんでした。とにかく、テーブル行のフォントサイズが正常に変更されます。ここでNetbeansでjTableヘッダーの列のフォントサイズをカスタマイズする方法は?

は、私が使用した方法です:

?

出力変更後:

?

問題:ザ・ヘッダーのフォントサイズは変更されません。私もそれを変更したいと思います。ので、plsは私のやり方を手伝ってくれます。

答えて

2

一つの方法は、あなたが望むものとデフォルトFontUIManagerを使用して置き換えることであろうシステム

Column Headers

内のすべてのテーブルで使用されるフォントを置き換えます
Font font = UIManager.getFont("TableHeader.font"); 
font = font.deriveFont(48f); 
UIManager.put("TableHeader.font", font); 

もう1つの方法は、変更したい列に対してカスタムを提供することです。もう少し作業はしますが、どこに変更するかを決めることができるため、柔軟性が増しますそれらを乗せてください。あなた自身のカスタムJTableHeaderの中でこれを包むことができますが、私はちょうどいくつかの基本的なアイデアを提供しています。

Custom Column Header

Credit to Kleopatra for this idea

長いとそれの短いようなものを使用してインストールされている

public class HeaderRenderer implements UIResource, TableCellRenderer { 

    private TableCellRenderer original; 

    public HeaderRenderer(TableCellRenderer original) { 
     this.original = original; 
    } 

    @Override 
    public Component getTableCellRendererComponent(JTable table, 
                           Object value, boolean isSelected, boolean hasFocus, int row, 
                           int column) { 
     Component comp = original.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column); 
     comp.setFont(comp.getFont().deriveFont(Font.BOLD)); 
     return comp; 
    } 

} 

...

HeaderRenderer header = new HeaderRenderer(table.getTableHeader().getDefaultRenderer()); 
TableColumnModel columnModel = table.getColumnModel(); 
columnModel.getColumn(0).setHeaderRenderer(header); 

など何かを作り出します...あなたは手を汚さなければならないいくつかのコードを書いて、フォームエディタはあなたのためにすべてを行うことはありません

+0

ありがとうございます................................ ..! –

+0

plz私もこの質問にお答えします:http://stackoverflow.com/questions/41779352/code-error-in-set-data-into-rows-in-jtable-java –

関連する問題